首页 > 解决方案 > RabbitMQ:如何为所有消费者设置通用的 prefetchCount?

问题描述

我需要为队列定义同时处理消息的数量。prefetchCount 工作正常,但限制是针对每个消费者。在我的例子中,我可以有多个消费者,但我需要一个共同的限制(例如 2 个消费者,限制设置为 5。如果第一个消费者正在处理 3 条消息,那么第二个只能接受 2 条)。

你知道我怎样才能实现它吗?

背景:

标签: springspring-bootrabbitmqmessage-queue

解决方案


您应该将所有兔子侦听器的总并发定义为等于您的代理的数量。即 - 可用代理的数量为 6,那么如果您有 2 个消费者(兔子侦听器),每个消费者将有 3 个并发(核心和最大)


推荐阅读