私は定期的にRabbitMQから更新を取得し、それらを処理するPythonスクリプトcron-jobを書いています。私がそれらを処理するたびに、私はRMQキューの現在のスナップショットを取得する必要があります。私はqueue_declareを使用してメッセージの数を取得します。 basic_getでメッセージを1つずつ取得する方法を知っています。また、basic_consume/start_consumingを使用して、バックグラウンドでメッセージを取得し、それらをいくつかのリストに格納し、定期的にそのリストから取得できますが、何らかのエラーでスクリプトが失敗するとどうなりますか?私はすべての読まれたメッセージをリストで失ってしまいます。また、私は消費者(RMQへの接続プール)をほとんど使用せず、メッセージを1つずつ取得することができます。多分それを行うための他のアプローチがありますか?RabbitMQキューからたくさんのメッセージを読む最も良い方法は?
だから、私の質問は - RabbiMQキューから現在のメッセージを取得するための最良の(すなわち、安全かつ高速な)方法は何か?
は本当のような音が、私は、スクリプトを停止(または何らかのエラーが発生した)場合は消費しながら何が遅いのですか?特に問題はありますか? – Sergius
RabbitMQの動作、具体的にはメッセージを確認するプロセスと、承認されていない場合にどうなるかを知る必要があります - https://www.rabbitmq.com/confirms.html –