1

NServiceBus Saga\Handler 内から Wcf サービスを正しく呼び出すのを手伝ってくれる人はいますか?

現在、ハンドラー内から同期呼び出しを行っています。

ただし、IIRC は少し前に NServiceBus のドキュメント ページで Saga の使用を推奨していましたが、それ以上の詳細は提供していませんでした。

私の理解では、Saga は、Wcf 呼び出しが処理されている間は永続化され、その後、応答を受信するために再開できるため、優先されます。(他の唯一の考えは、一般的にハンドラーよりも長く実行されるため、佐賀が好まれるということです)。

私が助けを必要としているのは、Wcf サービスからの応答で Saga インスタンスを再開する最も適切な方法です。

ありがとうマーク

4

1 に答える 1

4

実際には、サガが外部リソースを直接呼び出すことは望ましくありません。

代わりに、サガはハンドラーにメッセージを送信し、そのハンドラーは同期的に WCF を呼び出し、応答と共にメッセージを送り返します。

WCF の呼び出しがタイムアウトした場合、ハンドラーは自動再試行ロジックを実行するか、メッセージがエラー キューに入る可能性があります。

その後、サガは、応答が一定期間内に受信されない場合に何をすべきかのロジックを処理できるようになります。

于 2012-11-05T20:12:59.193 に答える