Apollo配置中心使用詳解


項目地址

https://github.com/ctripcorp/apollo.git

Quick Start部署指南

https://github.com/ctripcorp/apollo/wiki/Quick-Start

不過這里需要注意的是,Quick Start只針對本地測試使用,如果要部署到生產環境,還請另行參考分布式部署指南。
注:Quick Start需要有bash環境,Windows用戶請安裝Git Bash( https://git-for-windows.github.io/ ), 或者也可以直接通過IDE環境啟動,詳見Apollo開發指南( https://github.com/ctripcorp/apollo/wiki/Apollo開發指南 )。

Apollo Quick Start Docker部署

https://github.com/ctripcorp/apollo/wiki/Apollo-Quick-Start-Docker%E9%83%A8%E7%BD%B2

分布式部署指南

https://github.com/ctripcorp/apollo/wiki/%E5%88%86%E5%B8%83%E5%BC%8F%E9%83%A8%E7%BD%B2%E6%8C%87%E5%8D%97

Java客戶端使用指南

https://github.com/ctripcorp/apollo/wiki/Java%E5%AE%A2%E6%88%B7%E7%AB%AF%E4%BD%BF%E7%94%A8%E6%8C%87%E5%8D%97

Apollo Python 客戶端

https://github.com/filamoon/pyapollo  實時同步配置、灰度配置
https://github.com/BruceWW/pyapollo  實時同步配置、灰度配置、客戶端容災
https://github.com/xhrg-product/apollo-client-python

客戶端設計

  • 客戶端和服務端保持了一個長連接,從而能第一時間獲得配置更新的推送。(通過Http Long Polling實現)
  • 客戶端還會定時從Apollo配置中心服務端拉取應用的最新配置。
    • 這是一個fallback機制,為了防止推送機制失效導致配置不更新
    • 客戶端定時拉取會上報本地版本,所以一般情況下,對於定時拉取的操作,服務端都會返回304 - Not Modified
    • 定時頻率默認為每5分鍾拉取一次,客戶端也可以通過在運行時指定System Property: apollo.refreshInterval來覆蓋,單位為分鍾。
  • 客戶端從Apollo配置中心服務端獲取到應用的最新配置后,會保存在內存中
  • 客戶端會把從服務端獲取到的配置在本地文件系統緩存一份
    • 在遇到服務不可用,或網絡不通的時候,依然能從本地恢復配置
  • 應用程序可以從Apollo客戶端獲取最新的配置、訂閱配置更新通知


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM