想实现的目的—-分布式自动刷新配置功能
运用消息中间件的订阅模式,实现将原来config中修改了远程上面yml后需要手动发送刷新配置改成自动刷新

什么是总线
在微服务架构的系统中,通常会使用轻量级的消息代理来构建一个共同的消息主题,并让系统中所有的微服务实例都连接上来。由于该主题中产生的消息会被所有的实例监听和消费,所以称它为消息总线。在总线上的各个实例,都可以方便的广播一些需要其他连接该主题上的实例都知道的的消息。
基本原理:
ConfigClient实例都监听MQ中的同一个topic(默认是springCloudBus)。当一个服务刷新数据的时候,它会把这个信息放到topic中,这样其它监听同一个topic的服务就能得到通知,然后更新自身的配置。

两种消息通知

1.利用消息总线触发一个服务端的bus/refrush(推荐)

image.png

2.利用消息总线触发一个客户端的bus/refrush

不该承担这样的职责,破坏微服务之间的对等性
image.png

bus总线使用:

config服务端配置

image.png
image.png

yml添加mq相关配置

image.png
image.png

config客户端配置:

image.png

yml配置:

image.png
使用:
现在修改了gitlub上yml后 ,向服务端发送刷新
image.png
一次发送,处处生效

定点刷新

只刷新一个:
image.png
image.png
通知总结:
image.png