2

TimeToBeReceived 属性を使用して NServiceBus にメッセージを実装できることはわかっていますが、nservicebus には、TimeToBeReceived 属性で構成された時間が経過しても送信されたメッセージが受信されなかった場合にイベント ハンドラーを実行するためのインフラストラクチャ機能がありますか?

4

2 に答える 2

4

これを適用的に試みることができます。メッセージの送信先のターゲットに何らかの応答を返すようにします。次に、メッセージを送信するだけでなく、saga を使用してメッセージを送信します。TimeToBeReceived と同じ期間、サガにタイムアウトを要求させます。応答ハンドラ メソッドで、サガ マーク自体を完成させます。次に、サガのタイムアウト メソッドは、探していたコールバックです。

TimeoutManager を実行する必要があることに注意してください。

それはAndreasの短い答えに対する長い答えです:)

于 2009-11-21T00:21:27.727 に答える
0

基礎となるキュー システム (MSMQ、Azure Queues など) が「古い」メッセージを破棄する責任があるという事実により、これがいつ発生したかを検出することができなくなります。

簡潔な答え:

いいえ

お役に立てれば!

于 2009-11-20T08:54:47.947 に答える