【问题标题】:Single consumer for multiple queues in the Same JMS Server同一 JMS 服务器中多个队列的单个使用者
【发布时间】:2013-04-22 21:48:00
【问题描述】:

我有一个 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>

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

【问题讨论】:

  • 某些邮件数据似乎丢失了
  • 是的!抱歉..现在改了!

标签: spring activemq amqp


【解决方案1】:

如果您不使用 QPid 客户端,而是使用 ActiveMQ 客户端,则可以使用 something like that

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

【讨论】:

    【解决方案2】:

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

    【讨论】:

      猜你喜欢
      • 2012-12-16
      • 2013-05-07
      • 1970-01-01
      • 2012-07-14
      • 1970-01-01
      • 2019-04-30
      • 2011-10-23
      • 2019-10-08
      • 1970-01-01
      相关资源
      最近更新 更多