2016-08-29 5 views
0

メッセージはキューにありますが、メッセージが正常にトリッジされたときにキューからメッセージを削除したくありません。私はそこにメッセージを残して、別の時間に再トリガするようにしたいのですが、それに対して誰かがrabbitMQをどのように設定するか考えていますか?受け入れられたメッセージの再キュー

答えて

2

あなたはそれを行うことはできませんが、交換に2番目のキューを追加して両方にメッセージをルーティングすることができます。後で2番目から消費することができます。

もちろん、消費しているアプリケーションを同じキューまたは別のキューに再パブリッシュできます。

+0

正確に+1。また、検索することなく、別のソリューションを提供する可能性のある拡張機能があるかもしれませんが、私はこれを「別の時」の部分(私はいつもrmqの拡張機能すべてに驚いています) 。 – cantSleepNow

0

あなたができることはコンセプトデッドレターキューがあることです。メッセージが正常に読み取られたら、そのメッセージをデッドレターキューに移動できます。

これは、後でメッセージを処理する唯一の方法です。または、同じキューにメッセージを保存したい場合は、完了したようなことをすることができます。メッセージを確認してそこに置くことができますが、キューをブロックする可能性があります。

デッド・レター・キューを使用すると問題は解決しますが、デッド・レター・キューの目的は、メッセージがキューに滞留しているときにメッセージを移動することです。

関連する問題