1. 程式人生 > >Apollo 分散式配置中心

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