Spring 是否有任何设置返回到第一个群集CachingConnectionFactory设置地址

Spring 是否有任何设置返回到第一个群集CachingConnectionFactory设置地址,spring,spring-boot,rabbitmq,spring-rabbit,Spring,Spring Boot,Rabbitmq,Spring Rabbit,我正在为多个集群使用CachingConnectionFactory的setAddresses方法 连接=新的CachingConnectionFactory(); connection.setAddresses(“rabbit1:5672,rabbit2:5672”) 当我关闭集群rabbit1时,它从下一个集群rabbit2开始 我的问题是,有一些配置可以返回到第一个集群rabbit1, 我已经试过了,但我找到了解决办法 谢谢连接工厂有重置连接的方法 factory.resetConnect

我正在为多个集群使用CachingConnectionFactory的setAddresses方法

连接=新的CachingConnectionFactory(); connection.setAddresses(“rabbit1:5672,rabbit2:5672”)

当我关闭集群rabbit1时,它从下一个集群rabbit2开始

我的问题是,有一些配置可以返回到第一个集群rabbit1, 我已经试过了,但我找到了解决办法


谢谢

连接工厂有重置连接的方法

factory.resetConnection()


下一次打开将从开始处重新开始(除非
shuffleAddresses
已设置为
true
)。

请在编辑模式下使用可用的代码块选项格式化代码,以使其更具可读性。添加resetConnection(),但当rabbit1已重新启动时,它不会返回rabbit1,它停留在rabbit2@Bean public ConnectionFactory ConnectionFactory()中,抛出异常{CachingConnectionFactory ConnectionFactory=new CachingConnectionFactory();ConnectionFactory.setaddress(“rabbit1:5672,rabbit2:5672”);ConnectionFactory.setUsername(“admin”);ConnectionFactory.setPassword(“admin”);connectionFactory.resetConnection();返回connectionFactory;}不要将代码放在这里的注释中;正如您所看到的,它渲染不好,很难阅读。改为编辑问题。它不会自动返回第一个,您必须通过调用
resetConnection()
强制关闭与rabbit2的连接。在调试器中运行代码,并在
AbstractConnectionFactory.connect()
中设置断点。