Java高级教程之SpringCloud-16:SpringCloud Bus消息总线配置RabbitMQ

配置文件的变动可以通过消息传给配置中心微服务客户端,这需要整合SpringCloud和RabbitMQ或者Kafka。

 

https://spring.io/projects/spring-cloud-bus

https://cloud.spring.io/spring-cloud-bus/reference/html/

 

在本地安装RabbitMQ,启动后查看管理地址:

http://localhost:15672

 

 

用户名:guest

密码:guest


查看交换机:

 

http://localhost:15672/#/exchanges

 

在配置中心服务micro-service-config-server工程中,加入rabbitMQ的依赖。

Java高级教程之SpringCloud-16:SpringCloud Bus消息总线配置RabbitMQ

 

在application.yml配置文件中,加入rabbitMQ的地址和端口,用户名和密码为guest。

Java高级教程之SpringCloud-16:SpringCloud Bus消息总线配置RabbitMQ

 

重启配置中心微服务,再查看RabbitMQ的交换机,可以看到springCloudBus状态。springCloudBus为topic消息,可以让客户端订阅配置中心的消息。

Java高级教程之SpringCloud-16:SpringCloud Bus消息总线配置RabbitMQ

 

还可以查看消息队列,已经有一个springCloudBus连接的队列。

Java高级教程之SpringCloud-16:SpringCloud Bus消息总线配置RabbitMQ

 

现在配置中心微服务已经和RabbitMQ连接,只要git有更新,通过配置git的Web Hooks,可以将消息发送给配置中心的订阅消息。配置中心得到更新的通知,拉取新的配置文件内容,这样其他微服务客户端也相应得到更新。

http://localhost:8888/actuator/bus-refresh

Java高级教程之SpringCloud-16:SpringCloud Bus消息总线配置RabbitMQ