快速开始
Spring Cloud Bus 的工作原理是,如果它在类路径中检测到自身,就会添加 Spring Boot 自动配置。要启用总线,请在依赖管理中添加 spring-cloud-starter-bus-amqp
或 spring-cloud-starter-bus-kafka
。Spring Cloud 会处理其余的工作。确保代理(RabbitMQ 或 Kafka)可用并已配置好。在本地运行时,您无需做任何操作。如果在远程运行,请使用 Spring Cloud Connectors 或 Spring Boot 的约定来定义代理的凭据,如下面的 RabbitMQ 示例所示:
spring:
rabbitmq:
host: mybroker.com
port: 5672
username: user
password: secret
当前总线支持向所有监听的节点或特定服务(由 Eureka 定义)的所有节点发送消息。/bus*
执行器命名空间提供了一些 HTTP 端点。目前实现了三个端点。第一个是 /busenv
,它发送键值对以更新每个节点的 Spring 环境。第二个是 /busrefresh
,它会重新加载每个应用程序的配置,就像它们都在其 /refresh
端点上被触发一样。第三个是 /busshutdown
,它发送一个关闭事件以优雅地关闭应用程序实例。
备注
Spring Cloud Bus 启动器涵盖了 Rabbit 和 Kafka,因为它们是两种最常见的实现。然而,Spring Cloud Stream 非常灵活,绑定器可以与 spring-cloud-bus
一起使用。