1. ホーム
  2. rabbitmq

[解決済み] RabbitMQ」メッセージの種類「Ready」「Unacked」とは何ですか?

2022-02-15 08:47:09

質問

RabbitMQでこの2種類のメッセージの間で混乱しています。

私のキューには、0 "Unacked" と 1000 "Ready" のメッセージがあるものと、1000 "Unacked" と 0 "Ready" のメッセージがあるものとがありますね。

両者の違いは何ですか?

また、コンシューマーに読まれたメッセージの数を知るにはどうしたらよいですか?

どのように解決するのですか?

メッセージは 準備完了 は、処理待ちの状態です。

コンシューマがキューに接続すると、処理するメッセージのバッチを取得します。その量はプリフェッチサイズで指定されます。この消費者がメッセージの処理をしている間、彼らは unacked 状態を取得します。

解除 は、コンシューマが処理を約束したが、処理されたことを認めていないことを意味します。コンシューマがクラッシュした場合、キューはどのメッセージがコンシューマがオンラインになったときに再び配送されるかを知っています。複数のコンシューマがある場合、メッセージはそれらの間に分散されます。