1. 快速入门

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/*actuator 命名空间有一些 HTTP 端点。目前实现了两个。第一个,/bus/env,向每个节点发送键/值对,以更新每个节点的 Spring 环境。第二个,/bus/refresh,重新加载每个 应用程序的配置,就好像它们都被 ping 到其/refresh端点一样。spring-doc.cadn.net.cn

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