【问题标题】:ActiveMQ: One Pending Message but Queue is empty - ActiveMQ 5.12.0ActiveMQ:一条待处理消息但队列为空 - ActiveMQ 5.12.0
【发布时间】:2016-11-20 23:53:39
【问题描述】:

我遇到了与此处所述相同的问题: ActiveMQ: One Pending Message but Queue is empty.

Active MQ 显示队列的待处理消息,但是当我单击它时它是空的。

  • 更多客户:
    • hawtio - 相同的行为
    • 我的 java 消费者
      • 不消耗任何东西
      • 重启后,继续消费

我们不是将消息保存在默认的 kaha 数据库中,而是保存在 Oracle 数据库中。我可以在表 ACTIVEMQ_MSGS 中看到数据库中的待处理消息。

在 activeMQ 重新启​​动后,所有客户端都按预期工作。在管理控制台中,我可以看到消息,并且 java 消费者消费了这些消息。

通过更新 ActiveMQ 5.7.0 解决了上述现有问题。 我检查了 activeMQ 日志,但没有发现错误或警告。消息的生产者也没有改变。

知道我为什么会遇到这些问题吗?

【问题讨论】:

    标签: java activemq hawtio


    【解决方案1】:

    问题现已解决。 我还在活跃的 mq 邮件列表中询问: http://activemq.2283324.n4.nabble.com/One-Pending-Message-but-Queue-is-empty-ActiveMQ-5-12-0-td4715720.html.

    • 首先我们在客户端添加了这个方法调用:

      org.apache.camel.ConsumerTemplate.doneUoW(Exchange exchange)
      

      但最终还是没有解决问题

    • 此外,我们在活动 mq 中存在不可见的负载问题(healthStatus 为“良好”,jvm 值看起来也很好)。
      • activeMQ 中有太多队列用于记录旧消息。
      • 删除它们后,现在一切正常。

    【讨论】:

      猜你喜欢
      • 2012-11-08
      • 2019-06-02
      • 2014-09-24
      • 2015-06-18
      • 1970-01-01
      • 2015-12-13
      • 1970-01-01
      • 2018-09-23
      • 1970-01-01
      相关资源
      最近更新 更多