SpringBoot啟動加載Apollo配置過程

源碼流程:

1、遍歷yaml配置的namespaces
2、每個namespace創(chuàng)建對應的config
3、第一次去遠程同步,拿到apollo配置信息。this.trySync();

1、先從http://dev.com:8080注冊中心拿到apollo-configservice的ip地址172.2.1.1.2:8080
2、再拿這個ip地址+namespace拼成http://172.2.1.1.2:8080/configs/admin-server/default/application?ip=172.2.2.3
3、拿拼好鏈接去請求apollo查詢配置信息

4、定時刷新。this.schedulePeriodicRefresh();
5、長輪詢刷新,獲取Apollo配置。 this.scheduleLongPollingRefresh();
6、將拿到的apollo配置信息寫到了Spring的類ConfigurableEnvironment中,供項目使用。environment.getPropertySources().addFirst(composite);
7、后面就可以通過Environtment.getProperty()獲取apollo中的屬性,Environment中還加入了別的propertySources,也都可以用Environment獲取

參考博客:
1、https://blog.csdn.net/xl649138628/article/details/122061806
2、https://blog.csdn.net/hhj13978064496/article/details/83031806

最后編輯于
?著作權歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容