快速入门

Spring Cloud Bus 通过在类路径上检测到自身时添加 Spring Boot 自动配置来工作。要启用总线,请将 spring-cloud-starter-bus-amqpspring-cloud-starter-bus-kafka 添加到您的依赖项管理。Spring Cloud 会处理剩下的事情。确保 broker(RabbitMQ 或 Kafka)可用并已配置。在 localhost 上运行时,您无需执行任何操作。如果远程运行,请使用 Spring Cloud Connectors 或 Spring Boot 约定来定义 broker 凭据,如下面的 Rabbit 示例所示

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

该总线当前支持将消息发送到所有正在侦听的节点或特定服务的所有节点(由 Eureka 定义)。/bus* 执行器命名空间具有一些 HTTP 端点。目前,实现了三个。第一个 /busenv 发送键/值对以更新每个节点的 Spring 环境。第二个 /busrefresh 重新加载每个应用程序的配置,就像它们都在其 /refresh 端点上被 ping 过一样。第三个 /busshutdown 发送关闭事件以正常关闭应用程序实例。

Spring Cloud Bus 启动器涵盖 Rabbit 和 Kafka,因为这是两个最常见的实现。但是,Spring Cloud Stream 非常灵活,并且 binder 可以与 spring-cloud-bus 一起使用。