如何查找队列的大小

 常见问题解答 > 使用 Apache ActiveMQ Classic > 如何查找队列的大小

如何检查队列的大小?我知道这不是 JMS 标准,但大多数 JMS 实现都有方法可以做到这一点。

可以使用 ActiveMQ Classic 5.x 中的 MBean 查看队列深度。使用任何 JMX 管理控制台查看统计信息。请参阅如何监控 ActiveMQ Classic

还可以使用 JMS QueueBrowser 浏览队列的内容。

或者,您可以以编程方式访问统计信息

通过 MBean,您可以监控单个目标,包括与目标相关的消息统计信息。例如,您将在目标(队列或主题)上看到以下属性

  • 入队计数 - 自上次重启以来发送到队列的消息总数
  • 出队计数 - 自上次重启以来从队列中删除(消费者确认)的消息总数
  • 在传输中计数 - 发送到消费者会话但未收到确认的消息数量
  • 调度计数 - 发送到消费者会话的消息总数(出队 + 在传输中)
  • 过期计数 - 由于过期而未交付的消息数量

“队列大小”也在属性“QueueSize”中明确指出。QueueSize 是队列/存储中尚未被消费者确认的消息总数。与入队计数相比,这有时会让人困惑,因为入队计数是在一段时间内(自上次代理重启以来)的计数,而 QueueSize 不依赖于一段时间,而是依赖于存储中消息的实际数量。

Apache、ActiveMQ、Apache ActiveMQ、Apache 羽毛标志和 Apache ActiveMQ 项目标志是 Apache 软件基金会的商标。版权所有 © 2024,Apache 软件基金会。根据 Apache 许可证 2.0 授权。