使用 Spring 配置的 ActiveMQ,监听器配置了 prefetch=0 connectionFactory 和 5-5 并发,我们看到监听器显然轮询新消息而不是代理推送消息,正如预期的那样。
但是,在我们队列的“Active Listeners”的 ActiveMQ Web 控制台中,我看到“Enqueues”列计数持续快速上升(大约每秒 1 个)。这是正常行为吗?既然我们有 prefetch=0,这是否只是反映了侦听器对新消息的每次轮询?当没有实际消息正在工作时,队列显示出越来越多的 Enqueue 计数似乎有点奇怪。还想知道是否有办法限制轮询频率,或者在每个消费者轮询代理以获取新消息之前有一些延迟。
控制台的图片,显示了 prefetch=0 时每个消费者不断增加的 Enqueue 计数,即使没有消息可以工作:
http://activemq.2283324.n4.nabble.com/file/n4666021/enqueues.png