SpringCloud-Bus
一、介绍
(1)bus搭配config可以实现客户端配置自动刷新
(2)bus支持两种消息代理,rabbitmq和kafka
(3)使用topic模式分发消息
二、项目搭建(广播)
(1)客户端和服务配置中心pom.xml增加依赖
<dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-bus-amqp</artifactId></dependency>
(2)修改客户端的bootstrap.yml,添加rabbitmq配置、暴露actuator的refresh端点
server:port: 3355spring:application:name: cloud-config-client-servicecloud:config:label: master #分支名name: application # - 号前缀profile: prod # - 号后缀uri: http://localhost:3344 #配置中心地址rabbitmq:host: 192.168.0.166port: 5672username: guestpassword: guesteureka:client:# 客户端设置为trueregister-with-eureka: true# 客户端设置为truefetch-registry: trueservice-url:# defaultZone: http://localhost:7001/eurekadefaultZone: http://eureka1.com:7001/eureka, http://eureka2.com:7002/eurekainstance:instance-id: configClient3355prefer-ip-address: truemanagement:endpoints:web:exposure:include: "*"
(3)修改配置中心服务端的bootstrap.yml,暴露actuator的bus-refresh端点
server:port: 3344spring:application:name: cloud-config-servicecloud:config:server:git:uri: https://gitee.com/feifanwsh/config.gitlabel: masterrabbitmq:host: 192.168.0.166port: 5672username: guestpassword: guesteureka:client:# 客户端设置为trueregister-with-eureka: true# 客户端设置为truefetch-registry: trueservice-url:# defaultZone: http://localhost:7001/eurekadefaultZone: http://eureka1.com:7001/eureka, http://eureka2.com:7002/eurekainstance:instance-id: config3344prefer-ip-address: truemanagement:endpoints:web:exposure:include: "bus-refresh"
(4)运行
curl -X POST "http://localhost:3344/actuator/bus-refresh"
三、单播
运行
curl -X POST "http://localhost:3344/actuator/bus-refresh/服务名:端口号"