同一JMS服务器中多个队列的单个使用者

时间:2013-04-29 09:17:52

标签: spring activemq amqp

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

现在我有三个不同的制作人

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

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

问题是

我可以让Single使用者收听所有这三个队列吗?

如果是,如何在Spring中制作它

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

<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>

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

2 个答案:

答案 0 :(得分:1)

如果你没有使用QPid客户端,你可以做something like that,但是你可以使用ActiveMQ客户端。

但是,如果你真的需要这样的话,你也可以在XML配置中做一些composite queue magic server side。只需设置多个复合队列,然后转发到您读取的单个物理队列。它不是一回事,但它可能(或可能不会)解决你的问题。

答案 1 :(得分:0)

回答我自己的问题。在这期间,我打字,这是不可能的。我们不能让消费者不止一次听队列。