Rabbitmq Spring AMQP RabbitListener与2个兔子集群连接

Rabbitmq Spring AMQP RabbitListener与2个兔子集群连接,rabbitmq,spring-amqp,spring-rabbit,Rabbitmq,Spring Amqp,Spring Rabbit,我有一个用@RabbitListener注释的侦听器方法,它当前配置为从1个兔子集群进行侦听。现在,我有了另一个兔子集群(cluster2),它定义了相同的队列/交换/路由密钥,并且可以发布消息 有没有一种方法可以使用相同的侦听器方法来侦听两个集群?作为一个监听器,我不在乎消息来自哪个集群,我想对这两个集群都做同样的处理 //配置 @豆子 @ConfigurationProperties(“cluster1.rabbitmq”) 公共RabbitProperties rabbitProps(){

我有一个用
@RabbitListener
注释的侦听器方法,它当前配置为从1个兔子集群进行侦听。现在,我有了另一个兔子集群(cluster2),它定义了相同的队列/交换/路由密钥,并且可以发布消息

有没有一种方法可以使用相同的侦听器方法来侦听两个集群?作为一个监听器,我不在乎消息来自哪个集群,我想对这两个集群都做同样的处理

//配置
@豆子
@ConfigurationProperties(“cluster1.rabbitmq”)
公共RabbitProperties rabbitProps(){
返回新的RabbitProperties();
}
//侦听器代码
@RabbitListener(id=“我的应用程序”,bindings=@QueueBinding(value=@Queue(value=“Some\u Queue\u Name”),
exchange=@exchange(value=“Some\u exchange\u Name”),
key=“Some\u Routing\u key”))
公共消息无效(最终消息){
// ....
}
My
application.yml
定义了以下配置

cluster1.rabbitmq.host
cluster1.rabbitmq.username
cluster1.rabbitmq.password

创建两个侦听器容器工厂,并向该方法添加第二个
@RabbitListener

@RabbitListener(id=“我的应用程序1”,
bindings=@QueueBinding(value=@Queue(value=“Some\u Queue\u Name”),
exchange=@exchange(value=“Some\u exchange\u Name”),
key=“Some\u Routing\u key”))
@RabbitListener(id=“我的应用程序2”,containerFactory=“secondContainerFactory”
bindings=@QueueBinding(value=@Queue(value=“Some\u Queue\u Name”),
exchange=@exchange(value=“Some\u exchange\u Name”),
key=“Some\u Routing\u key”))
公共消息无效(最终消息){
// ....
}

第一个将使用默认的
rabbitListenerContainerFactory

谢谢,参考
org.springframework.boot.autoconfigure.amqp.RabbitProperties
,似乎有一个名为
addresses
的属性。假设两个集群的队列名称/交换和凭据相同,如果我只是在此属性中配置两个集群地址,最终结果是否相同?否;不能对多个连接工厂使用引导自动配置。