前言
我們在平時工作中可能會有這樣的需求,系統運行期間需要動態調整配置項,比如:
- 調整系統告警人
- 調整活動開關
- 調整降級開關
- 調整日志級別
- ...
以上這些還不夠,隨着程序功能的日益復雜對配置的期望也越來越高,還需要滿足:
- 實現分環境、分集群的管理配置
- 實現配置的灰度發布
- 配置的發布需要完善的授權機制
- 配置的發布需要記錄發布歷史
- 支持配置回滾到上一個發布版本
- ...
怎么解決上述問題,有沒有開源產品?
市面上的配置中心
如何選擇?大家可以自行翻閱下文檔。
我的最終選擇是 Apollo
。
- 修改/發布配置
- 配置更新通知
- 獲取最新配置
下圖是 Apollo
架構模塊的概覽:
還有哪些應用場景?
應用場景廣泛,只要軟件中涉及到有本地配置文件的,都可以使用這種方式實現動態配置。
只需要自己實現一個 apollo-client
即可,當配置發生更新時,拉取最新配置信息,然后將配置信息處理成軟件所需的配置格式。
小結
這篇文章比較短,主要介紹了為什么需要配置中心以及市面上有哪些開源配置中心可供選擇。
Apollo
有完善的管理界面,這個我比較喜歡,哈哈。