Apollo 分散式配置中心
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開發指南
&n