4

トランザクション フローを使用するときに、WCF がクライアントとサーバーの両方で MSDTC を構成して開始する必要があるのはなぜだろうか。(ネットワーク アクセスが有効になっている場合)

結局のところ、WCF のトランザクションは、WsAtomicTransaction を使用して SOAP メッセージを介して管理されます。では、一体なぜ、2 つの DTC が相互に通信する必要があるのでしょうか。

ご返信ありがとうございます。

4

1 に答える 1

3

はい、WCF は、必要に応じて WS-AtomicTransactions を使用できますし、使用する予定です。ほとんどの場合、相互運用性のシナリオ (非 .NET クライアントまたはサービス) で使用されます。

しかし、多くの場合、相互運用性には (パフォーマンス) の代償が伴います。クライアントとサービスがすべて Windows ベースである場合、WCF は OleTransactions (耐久性のあるストアが 1 つだけの単純なケースでは OleTx) または MS-DTC (より多くの場合) を使用することを選択します。複数の永続ストアが関与する高度なシナリオ) - パフォーマンスと単純さの理由から。

したがって、WCF自体は MS-DTCを必要としませんが、Windows のみのシナリオでは、WCF (およびあなた) が MS-DTC の恩恵を受けることができます。

于 2010-01-26T17:58:58.963 に答える