配置中心我們?cè)O(shè)計(jì)的初衷就是盡量簡(jiǎn)單,所以直接使用了springcloud提供的spring-cloud-config,因?yàn)榻Y(jié)合git他能滿足目前我們所有的需求。
優(yōu)勢(shì)
spring-cloud-config和整個(gè)springboot框架完美結(jié)合,對(duì)于開(kāi)發(fā)人員基本沒(méi)有感知
通過(guò)git來(lái)管理文件,可以很好的記錄歷史修改,并且通過(guò)git來(lái)管理提交記錄
配置文件有優(yōu)先級(jí),可以很好的完成默認(rèn)配置,統(tǒng)一配置,個(gè)性化配置的需求
配置文件可以區(qū)分環(huán)境,針對(duì)不同的環(huán)境使用不同的配置文件,很好的區(qū)分不同的項(xiàng)目,便于維護(hù)
可以對(duì)于敏感性信息進(jìn)行加密,防止原始的用戶名和密碼的泄漏
可以動(dòng)態(tài)刷新變量配置,實(shí)現(xiàn)不停機(jī)更新變量配置
踩過(guò)的坑
通過(guò)basedir配置,改變配置文件存放路徑,要不然會(huì)存在/tmp目錄下面,導(dǎo)致讀取配置文件丟失
獲取配置的時(shí)候需要快速失敗,防止網(wǎng)絡(luò)不通的情況下繼續(xù)啟動(dòng)服務(wù)
通過(guò)force-pull配置,盡量每次啟動(dòng)的時(shí)候從git來(lái)重新拉取配置
刷新配置,在服務(wù)實(shí)例不多的情況下盡量不要通過(guò)bus來(lái)批量更新,因?yàn)榉?wù)不多的情況下手動(dòng)執(zhí)行每個(gè)實(shí)例更加可控。