2017-07-25 7 views
0

私はRabbitMq .netとメッセージの確認応答を処理しています。消費者がメッセージを処理できる場合は、処理が失敗した場合、Rabbitmqは別のキューにメッセージを移動します

channel.BasicAck(ea.DeliveryTag, false); 

の形式でackを返信することができます。このメッセージはキューから取り除かれます。私は、「X-デッドレター交換」を使用して試してみました

var message = JsonConvert.DeserializeObject<object>(json); 

直列化復元に問題がある場合は、「エラー・キュー」にメッセージを移動したいと思いますが、それは、「X-のメッセージ-TTLに依存します" 時間設定。私は、処理が失敗した場合にメッセージをエラーキューに移動したいだけです。どのようにこのfuncationalityを達成するために?私はオンラインで助けを見つけることができませんでした。あなたの消費者がfalseからrequeueフラグを設定してbasic.rejectまたはbasic.nackを使用してメッセージを拒否した場合

+0

デッドレター交換はあなたの問題を解決する:ここでは

はRabbitMQの.NET 3.6.10クライアントに拒否する機能またはNACKメッセージです。 – lambodar

答えて

関連する問題