是否可以一次从 RabbitMQ 队列中提取所有消息?

问题描述 投票:0回答:2

我想从 RabbitMQ 队列中提取消息,将它们包装在一个对象中并分派进行某种处理。当然,我可以迭代地这样做,直到队列为空,但我想知道是否有其他方法(某种标志)或更简洁的方法。

python-2.7 rabbitmq pika
2个回答
1
投票

RabbitMQ 不支持批量消息,因此您确实需要单独消费每条消息。

也许另一种选择是通过发布一条包含所有必需内容的大消息来自行批量处理消息。


0
投票

您可以使用 ch._pending_events 来获取未读消息的计数,并确保在继续下一步之前所有消息都已被消耗。

© www.soinside.com 2019 - 2024. All rights reserved.