apollo客戶端springboot實戰(四)


1. apollo客戶端springboot實戰(四)

1.1. 前言

  經過前幾張入門學習,基本已經完成了apollo環境的搭建和簡單客戶端例子,但我們現在流行的通常是springboot的客戶端,所以這章還是來學習下springboot客戶端如何和apollo整合
  接下來我來改造我自己的項目,我本來的項目接入的是spring config配置管理中心,讀的git上的配置,它沒有管理界面,功能也比較單一,所以我打算替換成apollo

1.2. 配置改動

  1. 添加配置類,這個@EnableApolloConfig 也可以直接放在啟動類上,我單獨一個配置類起到一定隔離,不需要的時候把apollo這個相關包注掉或刪掉

  2. 這是我原本的config配置

  1. 現在先前的config配置完全注掉,添加個application.yml配置個基本信息,原來存在git上的配置則統一放apollo上去

  2. 從1.2.0版本開始,如果希望把日志相關的配置(如logging.level.root=info或logback-spring.xml中的參數)也放在Apollo管理,那么可以額外配置apollo.bootstrap.eagerLoad.enabled=true來使Apollo的加載順序放到日志系統加載之前,不過這會導致Apollo的啟動過程無法通過日志的方式輸出(因為執行Apollo加載的時候,日志系統壓根沒有准備好呢!所以在Apollo代碼中使用Slf4j的日志輸出便沒有任何內容)-----這是官方原話,但我實際操作發現我用 apollo.bootstrap.eagerLoad.enabled=false根本沒有日志打印,打了spring logo就沒了,瀏覽器測試下接口通的,說明啟動完成了,但日志不起效果,反而用true就有我自己系統日志了,所以我這里設了true

  3. 配置pom

 <!-- 阿波羅配置中心 -->
 <dependency>
     <groupId>com.ctrip.framework.apollo</groupId>
     <artifactId>apollo-client</artifactId>
     <version>1.3.0</version>
 </dependency>
  1. 其他我們原先在application.properties中配置的屬性全部移到appollo

1.3. 總結

  阿波羅客戶端的配置還是相當簡單的,幾乎沒什么變動,如果有監聽配置改動的需求,它還提供了一個監聽注解@ApolloConfigChangeListener,想要完全了解apollo就去看看它的文檔,還是蠻全的,文檔地址:

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


免責聲明!

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



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