【问题标题】:Notify ActiveMQ producer if consumer on the destination is down如果目标上的消费者关闭,则通知 ActiveMQ 生产者
【发布时间】:2015-04-05 02:33:12
【问题描述】:

我正在使用 ActiveMQ 消息代理,并且我有一个需求,即生产者应用程序想知道在特定目标上消费的消费者应用程序是否启动?

我怎样才能做到这一点?

谢谢!

【问题讨论】:

    标签: spring jms activemq spring-jms


    【解决方案1】:

    您应该结帐Advisory messages。如果您想了解此类事件的更新,可以订阅该主题。

    具体主题:ActiveMQ.Advisory.NoConsumer.Queue 应该很有趣。您需要通过使用目标策略属性启用它代理端:sendAdvisoryIfNoConsumers

    【讨论】:

      【解决方案2】:

      你可以通过使用java代码来做到这一点,如下所示:

      Destination 类有一个方法getConsumers() 将返回到该目的地的订阅列表,然后它会为您提供消费者信息,通过此您可以检查您所需的消费者是否处于活动状态。

      祝你好运!

      【讨论】:

      • 认为如果生产者和消费者使用 2 个不同的 JVM [不同上下文] 连接代理。那怎么可能呢?
      • 如果他们处于不同的上下文中,那么我认为完全不需要这种沟通
      猜你喜欢
      • 2011-03-12
      • 2012-01-10
      • 2012-08-04
      • 1970-01-01
      • 2020-06-17
      • 2021-12-30
      • 1970-01-01
      • 1970-01-01
      • 2010-10-19
      相关资源
      最近更新 更多