今天分析微服务配置中心源码Config ,老规矩从jar包开始:
一、首先看配置中心的服务端:
1、核心启动类加注解:
此注解主要起到标识作用:
2、找依赖jar:
从这入口:
3、点击来到环境相关的Controll,配置中心必备的
4、点击此类进入,发现相关的方法名,佐证了postman调的方法:
服务端启动后调用配置中心的配置信息;证明是有这样一个接口存在:
进行调用:
5、拿配置中心信息,如果本地有从本地拿,否则从配置中心拿。
6、点击进入
7、点击getRepository方法,发现去git中拿:
8、点击getLocations方法:
9、下面是一系列git指令,去配置、更新最新的、合并等,任何返回:
10、先去本地看看是否有:
如果本地没有,就把配置中心的复制一份放入本地:
执行复制的指令 ,然后返回:
11、服务端配置加解密对象:
二、config客户端配置:
1、jar包相关:
点击 DiscoveryClientConfigServiceBootstrapConfiguration ,连接服务端:
2、点击 ConfigServiceBootstrapConfiguration 找到核心方法
进入 ConfigServicePropertySourceLocator
3、点击进入 getRemoteEnvironment,拼凑url进行远程调用服务端的配置信息,即到服务端的COntroller里取
到这里配置中心的整个流程打通了,大家可以 跟着源码反复多读几遍,加深印象!下篇我们分析actuator源码,敬请期待!