从RabbitMQ队列中读取大量消息的最佳方法是什么?

时间:2017-12-21 13:06:03

标签: python rabbitmq

我正在编写Python脚本cron-job,它定期从RabbitMQ获取更新并处理它们。每次我处理它们时,我只需要获取RMQ队列的当前快照。我使用queue_declare来获取其中的消息数量。 我知道如何使用basic_get逐个获取消息。此外,我可以使用basic_consume / start_consuming并在后台获取消息,将它们存储在某个列表中并定期从该列表中获取,但是如果脚本失败并出现一些错误怎么办?我将丢失列表中的所有阅读消息。此外,我可以使用少量消费者(RMQ的连接池)并逐个获取消息。也许有其他方法可以做到这一点?

所以,我的问题是 - 从RabbiMQ队列获取当前消息的最佳(即安全和快速)方式是什么?

1 个答案:

答案 0 :(得分:3)

使用basic_consume消费邮件的最佳方式。 basic_get很慢