Java 重新创建spring rabbit CachingConnectionFactory的所有连接

Java 重新创建spring rabbit CachingConnectionFactory的所有连接,java,spring,rabbitmq,spring-amqp,spring-rabbit,Java,Spring,Rabbitmq,Spring Amqp,Spring Rabbit,我有一个有多个地址的CachingConnectionFactory。当一个经纪人倒下时,它与第二个经纪人相连。现在,当代理再次出现时,我需要破坏现有的连接并重新连接到它。但是CachingConnectionFactory没有任何start、stop方法,只有destroy,这可能会导致工厂无法使用(?) 配置: <bean id="testConnFactory" class="org.springframework.amqp.rabbit.connection.CachingConn

我有一个有多个地址的CachingConnectionFactory。当一个经纪人倒下时,它与第二个经纪人相连。现在,当代理再次出现时,我需要破坏现有的连接并重新连接到它。但是CachingConnectionFactory没有任何start、stop方法,只有destroy,这可能会导致工厂无法使用(?)

配置:

<bean id="testConnFactory" class="org.springframework.amqp.rabbit.connection.CachingConnectionFactory">
    <property name="addresses" value="rabbit1,rabbit2" />
    <property name="cacheMode" value="CONNECTION" />
    <property name="connectionCacheSize" value="${connection.cache.size}" />
</bean>

有没有办法通过编程实现这一点?

调用
destroy()
是安全的;下次组件需要连接时,将重置并重新建立连接

但请记住,这将影响任何过程中的操作

我们可能应该添加一个不那么可怕的方法,比如像SpringJMS连接工厂那样的
resetConnection()

调用
destroy()
是安全的;下次组件需要连接时,将重置并重新建立连接

但请记住,这将影响任何过程中的操作

我们可能应该添加一个不那么可怕的方法,比如像SpringJMS连接工厂那样的
resetConnection()

调用
destroy()
是安全的;下次组件需要连接时,将重置并重新建立连接

但请记住,这将影响任何过程中的操作

我们可能应该添加一个不那么可怕的方法,比如像SpringJMS连接工厂那样的
resetConnection()

调用
destroy()
是安全的;下次组件需要连接时,将重置并重新建立连接

但请记住,这将影响任何过程中的操作


我们可能应该添加一个不那么可怕的方法,比如
resetConnection()
,就像我们在SpringJMS连接工厂中所做的那样。

是的,我已经测试过了……看起来很可怕,但效果很好。你说得对,添加的内容会更令人愉快:)是的,我已经测试过了……看起来很吓人,但效果很好。你说得对,添加的内容会更令人愉快:)是的,我已经测试过了……看起来很吓人,但效果很好。你说得对,添加的内容会更令人愉快:)是的,我已经测试过了……看起来很吓人,但效果很好。你说得对,添加内容会更令人愉快:)