1. 介紹
Apollo(阿波羅)是攜程框架部門研發的分布式配置中心,能夠集中化管理應用不同環境、不同集群的配置,配置修改后能夠實時推送到應用端,並且具備規范的權限、流程治理等特性,適用於微服務配置管理場景。
-- 摘自Apollo官網
1.1. 痛點
- 修改配置后,需要重啟項目
- 大量重復的配置,不便於管理
1.2. 為什么選擇Apollo
Apollo VS Spring Cloud Config
- Spring Cloud Config 依賴於GitHub,所有配置都是寫在文件中,然后通過提交GitHub上來生效的,不同的環境用不用的文件區分
Apollo VS 阿里雲應用配置管理ACM
- 依賴於阿里雲,不便於后續遷移
- 阿里雲已經放棄了該項目,不再維護
2. 快速開始
2.1. 服務端配置
運行方式有很多,作為入門,這里選擇直接從官網下載打好的jar包運行
https://github.com/ctripcorp/apollo/releases
在開始之前,首先需要建表。將項目clone下來,腳本位於${YOUR-WORKSPACE}/apollo/scripts/db/migration/
也可以直接去github上找,apolloportaldb.sql 、 apolloconfigdb.sql
1 source /your_local_path/configdb/V1.0.0__initialization.sql
2 source /your_local_path/portaldb/V1.0.0__initialization.sql
數據庫有了,接下來修改配置文件中相應的數據庫連接信息
如無意外,至此,adminservice、configservice、portal都起來了
初始賬號密碼是:apollo/admin
首先,新建一個項目
然后,編輯配置並發布
2.2. 客戶端配置
application.properties
修改配置后,實時生效
下一篇繼續探索Apollo
未完待續。。。
3. 文檔
https://github.com/ctripcorp/apollo/wiki/分布式部署指南
https://github.com/ctripcorp/apollo/wiki/Quick-Start
https://github.com/ctripcorp/apollo/wiki/Apollo使用指南
https://github.com/ctripcorp/apollo/wiki/Java客戶端使用指南
https://github.com/ctripcorp/apollo/wiki/Apollo開發指南