Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/neo4j/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jms 如何让所有消费者都参与处理挂起的消息?_Jms_Activemq - Fatal编程技术网

Jms 如何让所有消费者都参与处理挂起的消息?

Jms 如何让所有消费者都参与处理挂起的消息?,jms,activemq,Jms,Activemq,我们在Activemq中有10条消息,我们启动了2个消费者。但只有第一个消费者消费和处理这些消息。第二个消费者未消费消息 如果我在第一个消费者处理时间内向队列发送一条消息,则第二个消费者仅消耗和处理该特定消息(我们在第一个消费者处理时间内发送了一条消息)。之后,它不会消耗挂起的消息 最后,据我所知,所有挂起的消息都是由第一个使用者处理的,而不是剩余的使用者 我想让所有消费者都参与到未决消息的处理中 谢谢。我想你看到的是导致一个消费者抢先一堆信息,从而使其他消费者挨饿。您需要降低消费者限制,这样代

我们在
Activemq
中有10条消息,我们启动了2个消费者。但只有第一个消费者消费和处理这些消息。第二个消费者未消费消息

如果我在第一个消费者处理时间内向
队列
发送一条消息,则第二个消费者仅消耗和处理该特定消息(我们在第一个消费者处理时间内发送了一条消息)。之后,它不会消耗挂起的消息

最后,据我所知,所有挂起的消息都是由第一个使用者处理的,而不是剩余的使用者

我想让所有消费者都参与到未决消息的处理中


谢谢。

我想你看到的是导致一个消费者抢先一堆信息,从而使其他消费者挨饿。您需要降低消费者限制,这样代理就不会急于向第一个连接的消费者发送消息,并允许其他消费者联机以帮助平衡负载


在您的情况下,预取限制为1将允许所有消费者加入并获得一些工作

您的建议是正确的。设置
预取值=1
后,工作正常。我提到like
stringurl=”tcp://localhost:61617?jms.prefetchPolicy.queuePrefetch=1“
。这是正确的方法吗。