出于同样的JMS服务器

问题描述:

我有一个ActiveMQ的AMQP服务器上运行,我有一个单一的消费者聆听到队列中多个队列中单个消费者出于同样的JMS服务器

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

生产者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> 

为了听它到所有三个队列!

+0

一些消息数据似乎丢失 – 2013-04-29 10:15:55

+0

yup!对不起。现在改变它! – madhairsilence 2013-04-29 10:37:05

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

如果您没有使用QPid客户端,而是使用ActiveMQ客户端,则可以执行something like that

不过,如果你真的需要类似的东西,你也可以在XML配置中做一些composite queue magic server side。只需设置几个复合队列并转发到您阅读的单个物理队列即可。这不是一回事,但它可能(或可能不会)解决你的问题。