Jms 是否可以在所有已启动的使用者之间重新分发现有消息
我有阿耳特弥斯。生产者生成1000条消息,消费者逐个处理消息。现在我想在两个消费者的帮助下处理这个队列。我启动新消费者,新消息在两个运行的消费者之间分发。我的问题:是否可以在所有已启动的消费者之间重新分发旧消息?一旦代理将消息发送给消费者,那么代理就不能简单地调用它们,因为消费者可能正在处理它们。由使用者取消返回队列的消息(例如,通过关闭其连接/会话)Jms 是否可以在所有已启动的使用者之间重新分发现有消息,jms,activemq-artemis,Jms,Activemq Artemis,我有阿耳特弥斯。生产者生成1000条消息,消费者逐个处理消息。现在我想在两个消费者的帮助下处理这个队列。我启动新消费者,新消息在两个运行的消费者之间分发。我的问题:是否可以在所有已启动的消费者之间重新分发旧消息?一旦代理将消息发送给消费者,那么代理就不能简单地调用它们,因为消费者可能正在处理它们。由使用者取消返回队列的消息(例如,通过关闭其连接/会话) 我的建议是调整您的consumerWindowSize(在客户端的URL上设置),以便向您的消费者发送适当数量的消息。默认的consumerWi
我的建议是调整您的
consumerWindowSize
(在客户端的URL上设置),以便向您的消费者发送适当数量的消息。默认的consumerWindowSize
为1M(1024*1024字节)。更小的consumerWindowSize
将意味着更多的客户端将能够同时接收消息,但也意味着客户端将需要进行更多的网络往返,以告知代理在消息不足时发送更多消息。您需要运行基准测试以找到适合您的用例和性能需求的正确的consumerWindowSize
值。您所说的“旧消息”是什么意思?您是说已经发送给原始消费者的消息吗?是的。已发送的邮件。