如何做到 Spring Cloud Steam Binder SPI 弹性?

How to do Spring Cloud Steam Binder SPI resilience?

最初配置了 application.properties 中的以下属性:

spring.cloud.stream.defaultBinder:XXXXX spring.cloud.stream.binders.XXXXX.type:兔子 spring.cloud.stream.binders.XXXXX.environment.spring.rabbitmq.addresses : spring.cloud.stream.binders.XXXXX.environment.spring.rabbitmq.username:ppp spring.cloud.stream.binders.XXXXX.environment.spring.rabbitmq.password:qqqq spring.cloud.stream.binders.XXXXX.environment.spring.rabbitmq.virtual-主机:/com/llll/ccc

稍后我想在不停止服务器的情况下更改 spring.cloud.stream.binders.XXXXX.environment.spring.rabbitmq.addresses。我尝试了以下方式:

@Autowired
private EnvironmentManager poEnvironmentManager = null;

and the in the method 

poEnvironmentManager.setProperty("spring.cloud.stream.binders.XXXXX.environment.spring.rabbitmq.addresses", ".......");

它不工作。如果您有解决方案,请告诉我。

您不能即时更改 属性。这意味着必须创建一个新的连接工厂,可能是应用程序上下文的刷新。你想在这里实现什么,在运行时切换目标代理?