SpringBoot启动加载Apollo配置过程

源码流程:

1、遍历yaml配置的namespaces
2、每个namespace创建对应的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

你可能感兴趣的:(SpringBoot启动加载Apollo配置过程)