消息总线

微服务架构中,通常会使用轻量级的消息代理来构建一个共用的消息主题来连接各个微服务实例,它广播的消息会被所有在注册中心的微服务实例监听和消费,也称消息总线

2020317105912

使用

  • 添加依赖(服务端与客户端
<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-bus-amqp</artifactId>
</dependency>
  • 配置服务端

  rabbitmq:
    host: 127.0.0.1
    port: 5672
    username: guest
    password: guest

management:
  endpoints:
    web:
      exposure:
        include: bus-refresh
  endpoint:
    bus-refresh:
      enabled: true
  • 配置客户端
# 记得rabbitmq服务器信息
# 刷新时,关闭安全验证
management.endpoints.web.exposure.include=bus-refresh
# 开启消息跟踪
spring.cloud.bus.trace.enabled=true

当配置发生更新时,post调用配置中心 http://config_server:8003/actuator/bus-refresh

新配置就会传播到所有客户端

局部刷新

在调用webhook的时候,可以指定参数来指定更新要传播到哪些微服务

总线事件

访问 http://127.0.0.1:8003/actuator/trace 可以追踪

results matching " "

No results matching " "

results matching " "

No results matching " "