0

如果我有三个 Spring Boot 应用程序,例如 Person、Customer、Order,spring.application.name 分别为 person、customer、order,并且每个应用程序在 github Person.yml、Customer.yml、Order.yml 中都有配置。每个应用程序都有两个实例运行,例如 Person1、Person2、Customer1、Customer2、Order1、Order2,所有这些都设置为从 github 读取配置,并且还具有使用 rabbitmq 的 spring 云总线依赖项,它们都订阅了 rabbitmq 代理

就像 Spring cloud config server setup 一样,使用 rabbitmq 与 Spring cloud bus 一起运行,并从上面的 github 存储库中读取配置。/monitor并且配置服务器的端点有 github webhook 。

当我对 Person.yml 进行配置更改并保存它时,github 将发布到/monitorconfigserver 的端点。配置服务器现在会将这些更改发布到 rabbitmq 代理。

此时,由于所有应用程序都订阅了 rabbitmq,所有应用程序实例都会被触发,因此 person1、person2、customer1、customer2、order1、order2 都将尝试访问配置服务器,并且只有 person1 和 person2 会更新更改。或者只有 person1 和 person2 应用程序被触发并且它们访问配置服务器,因为更改只针对 Person.yml。

4

0 回答 0