是否临时复制特定的activeMQ队列以统计消息数



由于内存限制,activeMQ只返回队列的快照,在迭代时不保证所有消息。

为了统计所有消息,使其中一个属性与特定值匹配,我想复制队列(而不消耗消息(。一旦创建了临时副本,我就可以开始使用这个临时队列中的消息,并计算所有与该属性匹配的消息。这样,原始队列将不受影响。

是否可以在不消耗队列中的消息的情况下复制队列?它有缺点吗?

镜像队列、虚拟主题和复合目的地将没有帮助,因为它会将所有消息转发到另一个队列,而不会复制现有队列。

考虑到您想要的只是获得队列中消息的计数,这种方法似乎有些过头了,使用JMX MBean可以很容易地实现队列统计信息。您也可以使用Jolokia支持的Rest API访问MBean。

如果您对JMX一筹莫展,那么您可以利用统计代理插件来允许基于消息的API访问代理统计信息。

最新更新