Spring AMQP有两个ConnectionFactory

时间:2015-12-22 12:55:14

标签: spring spring-amqp

我有两个ConnectionFactory(不同的代理)的应用程序。它们配置了java类:

    @Bean
    public ConnectionFactory ...

    @Bean
    public Queue ...
...

在rabbittemplate中,您可以指示连接,但不能在队列或交换中指示,因此它们是在两个连接中创建的。 我是否必须使用RabbitAdmin仅在两个连接中的一个中创建队列?还有其他办法吗?

1 个答案:

答案 0 :(得分:4)

请参阅the documentation : Conditional Declaration

  

从1.2版本开始,可以有条件地声明这些元素。当应用程序连接到多个代理并且需要指定应声明特定元素的代理时,这尤其有用。

每个连接工厂都需要RabbitAdmin,并使用declared-by来指示哪些管理员应声明每个队列/交换/绑定。