具有多个消费者的 Pika 单队列
Pika single queue with multiple consumers
Python程序运行具有多个消费者的单个队列
我正在寻找队列何时收到多条消息(例如:10 条消息),
有没有办法让多个消费者(例如:5 个消费者)共享队列中的消息负载,就像每个消费者从队列中消费 2 条消息一样?
请建议我通过创建多个消费者来减少队列负载的替代方法。
您想 "play" 与 consumer prefetch,
这将确保单个消费者不会贪婪地获取队列中的所有消息,然后一条一条地处理它们(一种很常见的情况)。
来自文档:
Channel channel = ...;
Consumer consumer = ...;
channel.basicQos(2); // Per consumer limit
channel.basicConsume("my-queue", false, consumer);
这意味着消费者在任何给定时间只允许有 2 条 未确认 消息。
直到他确认其中一条消息(一旦他完成处理就应该这样做),他将能够选择更多。
Python程序运行具有多个消费者的单个队列
我正在寻找队列何时收到多条消息(例如:10 条消息),
有没有办法让多个消费者(例如:5 个消费者)共享队列中的消息负载,就像每个消费者从队列中消费 2 条消息一样?
请建议我通过创建多个消费者来减少队列负载的替代方法。
您想 "play" 与 consumer prefetch, 这将确保单个消费者不会贪婪地获取队列中的所有消息,然后一条一条地处理它们(一种很常见的情况)。
来自文档:
Channel channel = ...;
Consumer consumer = ...;
channel.basicQos(2); // Per consumer limit
channel.basicConsume("my-queue", false, consumer);
这意味着消费者在任何给定时间只允许有 2 条 未确认 消息。
直到他确认其中一条消息(一旦他完成处理就应该这样做),他将能够选择更多。