0

我有一个 ActiveMQ AMQP 服务器正在运行,我有一个消费者正在监听队列

现在我有三个不同的生产者

生产者 1 生产到队列 1 生产者 2 生产到队列 2 生产者 3 生产到队列 3

所有三个队列都来自同一台服务器。

问题是

我可以让单一消费者收听所有这三个队列吗?

如果是的话如何在春天做到这一点

目前,我的消费者通过以下连接配置成功

<bean id="blazeDestination" class="org.apache.qpid.amqp_1_0.jms.impl.QueueImpl">
        <constructor-arg index="0" value="ctest2" />        
 </bean>

我的消费者正在监听队列名称 ctest2

我可以说谎吗

<bean id="blazeDestination" class="org.apache.qpid.amqp_1_0.jms.impl.QueueImpl">
        <constructor-arg index="0" value="ctest2" />        
        <constructor-arg index="0" value="ctest3" />        
        <constructor-arg index="0" value="ctest4" />        
    </bean>

这样它就可以监听所有三个队列!

4

2 回答 2

1

如果您不使用 QPid 客户端,而是使用 ActiveMQ 客户端,则可以执行类似的操作。

不过,如果您真的需要类似的东西,您也可以在 XML 配置中做一些复合队列魔术服务器端。只需设置几个复合队列,并转发到您读取的单个物理队列。这不是一回事,但它可能(或可能不会?)解决您的问题。

于 2013-04-29T18:48:41.923 回答
0

只是回答我自己的问题。期间,我输入这个,这是不可能的。我们不能让一个消费者多听一次队列。

于 2013-07-23T11:26:42.223 回答