0%

Apollo

簡介

Apollo(阿波羅)是攜程框架部門研發的分布式配置中心,能夠集中化管理應用不同環境、不同集群的配置,配置修改后能夠實時推送到應用端,并且具備規范的權限、流程治理等特性,適用于微服務配置管理場景。

網址: https://github.com/ctripcorp/apollo/

wiki

網址:https://github.com/ctripcorp/apollo/wiki/

執行流程

1、用戶在配置中心對配置進行修改并發布

2、配置中心通知Apollo客戶端有配置更新

3、Apollo客戶端從配置中心拉取最新的配置、更新本地配置并通知到應用

工作原理

上圖簡要描述了Apollo的總體設計,可以從下往上看:

1、Config Service提供配置的讀取、推送等功能,服務對象是Apollo客戶端

2、Admin Service提供配置的修改、發布等功能,服務對象是Apollo Portal(管理界面)

3、Config Service和Admin Service都是多實例、無狀態部署,所以需要將自己注冊到Eureka中并保持心跳

4、在Eureka之上我們架了一層Meta Server用于封裝Eureka的服務發現接口

5、Client通過域名訪問Meta Server獲取Config Service服務列表(IP+Port),而后直接通過IP+Port訪問服務,同時在Client側會做load balance、錯誤重試

6、Portal(門戶)通過域名訪問Meta Server獲取Admin Service服務列表(IP+Port),而后直接通過IP+Port訪問服務,同時在Portal側會做load balance、錯誤重試

7、為了簡化部署,我們實際上會把Config Service、Eureka和Meta Server三個邏輯角色部署在同一個JVM進程

layicr 微信支付

微信支付

layicr 支付寶

支付寶