activemq - 计算具有特定属性值的消息数的最简单方法

时间:2014-07-16 13:13:49

标签: activemq activemq-cpp

在out产品中,我们需要偶尔计算队列中包含特定属性值的消息数。 直接的方法是使用带选择器的队列浏览器。但是:

  1. 有没有办法在不浏览所有相关消息的情况下获取此统计信息?我们不需要数据,只需要计数。
  2. 如果我们采用队列浏览器方法,它是否还会浏览某些消费者使用但尚未确认的消息?

1 个答案:

答案 0 :(得分:0)

无法保证基于选择器计算队列中的消息的方法。这有一个原因有很多原因,即JMS规范不要求QueueBrowser甚至返回队列上的每条消息。 ActiveMQ不会返回超过它可以装入内存的消息数量,所以如果你有一个深度队列,你就不会有准确的计数。管理工具都不会为您做这件事,因为它不是ActiveMQ作为数据库的工作。

这里有一些关于消息传递反模式的文章,您应该阅读这些文章,以便为消息传递中的冒险做好更充分的准备。

Article 1Article 2