首先抱歉创建了新主题。我做到了,因为不幸的是其他人对我来说并不是很清楚。
问题。
我想知道是否可以计算主题子/ pub中待处理的消息数量。
我在测试环境中使用tomcat和activemq,但我将在真实的环境中使用Tibco。是否有一种简单而通用的方法。
观测值
我已经使用纯JMS实现了一个消费者客户,它可以很好地接收来自其主题的所有消息。
答案 0 :(得分:1)
对于您的开发环境,如果您使用ActiveMQ并希望查看主题/队列中的待处理消息数,则可以使用ActiveMQ的JMX支持来监视JMS主题/队列。在this article中给出了使用JMX for ActiveMQ的一个很好的介绍。请注意,一旦您拥有QueueViewMBean
,您就可以通过调用getQueueSize
方法获取尚未发送的消息数。对于Tibco经纪人,我不知道它们是否提供与ActiveMQ类似的功能。我认为这取决于不同的JMS代理实现。
答案 1 :(得分:0)
您熟悉TIBCO GEMS(图形化EMS管理员)工具吗? 它可以在tibcommunity网站上免费下载
GEMS可以在TIBCO EMS主题上显示持久订阅者的待处理消息
答案 2 :(得分:0)
<强>解决强>
首先,谢谢有帮助过我的人。我已经在几周前完成了这个任务,但不幸的是我无法与你分享我为解决它所做的工作。 JMS的概念在我的脑海中并不是很清楚,从我的角度来看,这对问题解决方案至关重要。
首先,与待处理邮件相关的信息会被合并到提供商中。
每个提供程序都实现其所有类来处理此类信息。
Tibco罐子
Tibco提供了一个名为tibjmsadmin的jar,您可以在其中找到所有信息,例如与主题或队列相关的统计信息。
<强>解决方案强>
作为解决方案,tibjmsadmin被实现到我的项目中,因此通过其类来访问主题的信息。
oracle规范:http://www.oracle.com/technetwork/java/docs-136352.html