Spring 云配置客户端有助于在运行时更改属性。以下是 2 种方法来做到这一点
这两种方法的问题是,可能有多个客户端应用程序实例在云代工厂中运行,并且以上的其余调用将到达任何一个实例,从而使应用程序处于不一致的状态
例如。对/env 的 POST 可能会命中实例 1,并为实例 2 留下旧数据。
我能想到的一种解决方案是使用 for 循环连续“n”次到达这些端点,以确保所有实例都将被更新,但这是一个粗略的解决方案。有没有机构对此有更好的解决方案?
注意:我们在私有(private) PCF 环境中部署我们的应用程序。
最佳答案
该问题的典型解决方案是 Spring Cloud Bus。如果您的应用程序绑定(bind)到 RabbitMQ 服务并且它们在类路径上有总线,那么将有额外的端点/bus/env 和/bus/refresh 将消息广播到所有实例。有关更多详细信息,请参阅文档。
关于spring-boot - 如何更新多个spring config实例客户端,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29744971/