STOMP:在发送消息之前检查消费者是不是正在运行的方法?

Posted

技术标签:

【中文标题】STOMP:在发送消息之前检查消费者是不是正在运行的方法?【英文标题】:STOMP: Way to check if a consumer is running before sending a message?STOMP:在发送消息之前检查消费者是否正在运行的方法? 【发布时间】:2011-06-21 03:50:50 【问题描述】:

我想知道是否有办法在发送消息之前检查消费者是否正在运行?我正在使用最新的 php STOMP,并且正在努力查看是否有办法在发送之前检测它是否正在运行,并且消息只是在队列中建立。

谢谢, 史蒂夫

【问题讨论】:

【参考方案1】:

查看 AMQ 中可用的 BrokerStatisticsPlugin,它允许您的客户端发送消息并让代理向您发送有关其当前状态的各种好信息。

见: http://activemq.apache.org/statisticsplugin.html

问候

蒂姆 www.fusesource.com

【讨论】:

【参考方案2】:

如果您有 ActiveMQ Web Console 运行,您可以对 xml/queues.jsp 页面进行 CURL 调用,这将返回您的 XML 与 <queue> 节点看起来像

<queue name="integration">
  <stats size="0" consumerCount="1" enqueueCount="92491" dequeueCount="92491"/>
  <feed>
    <atom>queueBrowse/integration?view=rss&amp;feedType=atom_1.0</atom>
    <rss>queueBrowse/integration?view=rss&amp;feedType=rss_2.0</rss>
  </feed>
</queue>

您正在寻找&lt;stats&gt; 节点的consumerCount 属性。

【讨论】:

啊,这很有趣。我最终做了一个 ps -aux 的 grep

以上是关于STOMP:在发送消息之前检查消费者是不是正在运行的方法?的主要内容,如果未能解决你的问题,请参考以下文章

使用Spring STOMP websockets向单个人发送消息

Spring stomp - 使用 SimpMessagingTemplate 从服务器发送消息

无法使用 STOMP 向 activemq 发送消息

如何通过spring websocket STOMP向特定订阅发送消息?

我可以存储和读取来自 STOMP 队列/主题的消息吗?

如何使用 Spring WebSocket 向 STOMP 客户端发送错误消息?