Spring Cloud Config
Why?
1.自动更新配置,不需启动服务器
2.配置内容安全考虑
3.方便统一管理配置
What?
项目启动过程读取配置文件原理:
config也分为config client,config server,把这些服注册进eureka
config client通过service-id: CONFIG指定配置文件服务,通过(轮询)从eureka访问配置文件服务应用某一实例
config server中存放配置文件存放的git地址,然后从git指定的地址上拉取名字为name-profile配置文件
Spring Cloud Bus
Why?
在微服务体系中,当一个实例更改后,需要让其他的实例也都接收到更改后的消息时,这时想到的一个解决办法就是需要一个消息总线,把这些服务实例都接入到消息总线上,来达到广播通知的目的。应用场景如:配置信息的更改
How?
** 配置文件自动更新原理:**
1.config server 和config client端都引入Spring Cloud Bus,都加入到消息总线中来
2.当git上配置信息发生改变时,/bus/refresh 请求发送给config server,然后将刷新请求的消息发送到总线上,config client从消息总线中获取消息,并重新从config server中获取他们的配置信息,从而实现动态更新。