首页 > 解决方案 > ActiveMQ 代理从消费者那里获得持续的空消息拉取尝试

问题描述

我有两个 ActiveMQ 代理和一个消费者。消费者的连接配置设置为使用任一代理进行故障转移。在其中一个代理上,我得到一个持续的消息拉日志:

INFO LoggingBrokerPlugin - 消息来自:ID:CONSUMER_HOST-40120-1559830731356-0:1 on queue:QUEUE_NAME

INFO LoggingBrokerPlugin - preProcessDispatch: MessageDispatch {commandId = 0, responseRequired = false, consumerId = ID:CONSUMER_HOST-40120-1559830731356-1:1:1:1, destination = null, message = null, redeliveryCounter = 0}

每秒大约有两个这样的条目。我清除了队列,重新启动了两个节点并重新启动了消费者。

这是正常行为吗?这只是对任何新消息的正常轮询还是这里有问题?

标签: queueactivemqmessage-queuemessaging

解决方案


仅当配置为零预取大小并且您调用其中一种接收方法时,客户端才会执行拉取。您需要查看您的客户以及它是如何使用的,以及为什么拉动如此频繁地发生的答案,可能您正在循环中调用接收或类似的东西。


推荐阅读