キューリーダープロセスがクラッシュした場合にデータが失われないように、RabbitMQからのメッセージを未確認として取得する必要があります。 1000個のメッセージごとに、メッセージデータをディスクにコミットし、そのメッセージを確認済みとして認識して消費することができます。彼らを未確認の状態にして、今私たちが持っているものを具体的にターゲットにする方法はありますか?たとえば、リストに追加した後、そのリストを繰り返してメッセージを見つけることができますか? これはRabbitMQ .net FYIです。RabbitMQ後でメッセージを確認する
答えて
はい、RabbitMQからのメッセージを消費し、正常に処理したメッセージを明示的に確認できます。完全な例はthe second tutorial on RabbitMQ websiteです。あなたの設定あなたの消費者は、falseに(「なしマニュアルACK」)noAck
を設定されているので、.NETクライアントライブラリはなりません自動的にACKメッセージとき
:
しかし、ここでは、このチュートリアルの関連する部分ですあなたの消費者のコールバックでchannel.BasicConsume(queue: "task_queue", noAck: false, consumer: consumer);
、あなたは明示的にメッセージをACKの場合:
channel.BasicAck(deliveryTag: ea.DeliveryTag, multiple: false);
ヨいずれか1つのメッセージ(multiple
が偽)、またはこれを含むすべてのメッセージを受信できます(multiple
がtrue)。
また、"unacknowledge" messagesでもかまいません。そのため、RabbitMQは再キューイングして別のワーカーに送信できます。肯定応答と同様に、1つまたはすべてのメッセージを肯定応答しないかどうかを判断できます。さらに、requeue
フラグをtrueまたはfalseに設定して、メッセージを再キューに入れるか、またはドロップするかを指定することができます。
複数のメッセージを更新する方法はありますか?注文。承認する配信タグのリストを提供することで可能性がありますか?たとえば、1,2,3,4という3つのメッセージがあり、1と3を処理し、それらを一度に認識し、2と4で異なる処理を行い、後でACKを返します。 – AbbasFaisal
いいえ、AMQPの基本では不可能です。 ack'メソッド:単一のメッセージ番号と 'multiple'フラグをとり、' true'はこのメッセージ番号を意味し、以前のものは全て確認応答されます。 –
- 1. JavaでRabbitMQメッセージを確認するには?
- 2. RabbitMQ:メッセージは「未確認」のままです
- 3. window.print()の後の確認メッセージ
- 4. RabbitMqからのメッセージの受信を確認しない
- 5. RabbitMQ:ファンアウト交換で未承認のメッセージを再消費する
- 6. Camel RabbitMQパブリッシャーが確認します
- 7. RabbitMQ - メッセージごとに1つのスレッドを確保する
- 8. MPIで非ブロッキング通信によるメッセージ確認を確認
- 9. angularjsパスワードの確認は、確認メッセージ
- 10. telerik asp.net mvcグリッドコントロールで「保存後、確認メッセージを挿入」
- 11. 確認メッセージのハイパーリンクエイリアス
- 12. 確認メッセージSpringシェル
- 13. rails + jquery確認メッセージ
- 14. ブートボックスと確認メッセージ
- 15. RabbitMQトランザクションでメッセージを送信
- 16. バッチでメッセージを消費する - RabbitMQ
- 17. 春RabbitMQの待機確認タイムアウト
- 18. カフカトピックのメッセージを確認する方法
- 19. ブラウザページのメッセージを確認する
- 20. 新しいメッセージを確認する
- 21. 確認メッセージを表示
- 22. RabbitMQでスケジュールされたメッセージ
- 23. 新しいページにデータを挿入した後の確認メッセージ
- 24. rabbitmqのキューの最後にメッセージを返します
- 25. RabbitMQバッチ処理メッセージ
- 26. RabbitMQメッセージ暗号化
- 27. Web-Stomp Webソケット経由でRabbitMQに送信されたメッセージのステータスを確認します
- 28. RabbitMQは公開されたメッセージの確認がクライアントに返送される順序を保証しますか?
- 29. メッセージが公開されているかどうか、RabbitMQのステータスを確認しますか?
- 30. メッセージが確認されるまでのJmsメッセージの了解
この件に関するブログ記事を投稿しました:http://pmichaels.net/2016/10/28/acknowledging-a-messing-using-rabbitmq/ –