分散トランザクション処理機能 TP1/Connector for .NET Framework 使用の手引
Connector .NETは,Microsoft Distributed Transaction Coordinator(MSDTC)の分散トランザクションとOpenTP1のトランザクションとの2相コミットによるトランザクション連携を行い,MSDTC連携機能を実現します。MSDTC連携機能を使用すると,MSDTCを利用するほかのリソースとOpenTP1が使用するリソースとの間で分散トランザクション連携ができます。
MSDTC連携機能を使用したアプリケーションでは,.NET Frameworkが提供するSystem.Transactions名前空間内のAPIを使用することで,OpenTP1をリソースマネジャとしてMSDTCの分散トランザクションに参加させることができます。また,アプリケーションやOpenTP1で障害が発生した場合,Connector .NETが提供するトランザクションリカバリサービスがトランザクションを自動的に回復します。これによって,MSDTCの分散トランザクションでOpenTP1とOpenTP1以外のリソースとの整合性を保証します。トランザクションリカバリサービスの詳細については,「1.2.10 分散トランザクションのトランザクションリカバリサービス」を参照してください。
MSDTC連携機能では,OpenTP1が提供するXAリソースサービスを使用します。XAリソースサービスの詳細については,マニュアル「OpenTP1 解説」を参照してください。
MSDTC連携機能をWCFサービスで使用することで,他システムとのWS-AtomicTransactionによるトランザクション連携もできます。このとき,WCFサービスからOpenTP1へのサービス要求には,WCF連携機能を使用することもできます。WCF連携機能の詳細については「1.9 WCF連携機能」を参照してください。
WCF連携機能使用時のMSDTC連携機能の概要を次の図に示します。
図1-5 WCF連携機能使用時のMSDTC連携機能の概要
MSDTC連携機能を使用する場合,次のOSのどちらかが必要です。
MSDTC連携機能を使用する場合,次に示すソフトウェアが必要です。
また,トランザクション連携をする接続先のOpenTP1は,次のどちらかである必要があります。
MSDTC連携機能で使用できるRPCを次の表に示します。
表1-2 MSDTC連携機能で使用できるRPC
分類 | RPCの方式 | RPCの使用可否 | |
---|---|---|---|
WCF連携機能使用時 | WCF連携機能未使用時 | ||
RPCの種類 | リモートAPI機能を使用したRPC | ○ | ○ |
ネームサービスを使用したRPC | × | × | |
スケジューラダイレクト機能を使用したRPC | × | × | |
コネクトモード | オートコネクトモード | ○ | ○ |
非オートコネクトモード | × | × | |
RPCの形態 | 同期応答型RPC | ○ | ○ |
非同期応答型RPC | × | × | |
非応答型RPC | × | ○ | |
連鎖型RPC | × | ○ | |
トランザクションを引き継がないRPC | × | ○ |
All Rights Reserved. Copyright (C) 2006, 2009, Hitachi, Ltd.