请使用 spring-cloud-bus 5.0.1(最新稳定版本)!spring-doc.cadn.net.cn

快速开始

Spring Cloud Bus 通过在类路径中检测到自身时添加 Spring Boot 自动配置来工作。要启用总线,请将 spring-cloud-starter-bus-amqpspring-cloud-starter-bus-kafka 添加到您的依赖管理中。Spring Cloud 将负责其余部分。请确保消息代理(RabbitMQ 或 Kafka)可用并已正确配置。当在本地主机上运行时,您无需进行任何操作。如果远程运行,则需使用 Spring Cloud Connectors 或 Spring Boot 约定来定义消息代理的凭据,如下所示为 RabbitMQ 的示例:spring-doc.cadn.net.cn

application.yml
spring:
  rabbitmq:
    host: mybroker.com
    port: 5672
    username: user
    password: secret

总线当前支持向所有正在监听的节点或特定服务(由 Eureka 定义)的所有节点发送消息。/bus* 指标命名空间包含一些 HTTP 端点。目前实现了三个。第一个,/busenv,将键/值对发送至各节点,以更新每个节点的 Spring 环境。第二个,/busrefresh,重新加载每个应用程序的配置,其效果等同于所有应用都已通过其 /refresh 端点被触发过。第三个,/busshutdown,向应用实例发送关闭事件,以实现优雅停机。spring-doc.cadn.net.cn

Spring Cloud Bus Starters涵盖了 Rabbit 和 Kafka,因为它们是最常见的实现方式。然而,Spring Cloud Stream 具有很高的灵活性,其绑定器可与 spring-cloud-bus 配合使用。