次の方法で共有


2 フェーズ コミットのパフォーマンスに関する考慮事項

トランザクション インテグレーター (TI) コンポーネントがトランザクション内で実行されると、TI ランタイム環境は COM+ 環境の Microsoft 分散トランザクション コーディネーター (DTC) にメッセージを送信し、特別な種類の LU 6.2 リソース マネージャーとしてトランザクションに参加させます。 TI は、データ バッファーをホストに送信し、応答を受信すると、 メソッドを SetComplete 呼び出して、COM+ に制御を返します。 この時点で、クライアント アプリケーション、または TI を駆動する他のコンポーネントは、同じトランザクションにも含まれる他の作業を実行できます。 すべてのリソース マネージャーが更新を行い、発行 SetCompleteすると、トランザクションの作成者 (自動トランザクションの場合は COM+ 自体の場合があります) は、メソッドを Commit DTC に送信します。 DTC は、TI ランタイム環境を含むすべてのリソース マネージャーに第 1 フェーズ (Prepare) メッセージを送信します。 TI は SNA 形式で定義された を Prepare PS Header 生成し、ホストに送信します。 応答で を RequestCommit 受信します。これは、ホストの更新が有効であり、コミットできることを示し、この情報を DTC に渡します。 DTC は、すべてのリソース マネージャーから投票を収集し、準備がすべて問題なければ、コミット レコードを強制的にログに書き込み、メッセージを送信します Committed 。 ここでも、TI はこれを に SNA PS Header変換し、応答を受け取り、DTC に変換します。 すべてが計画どおりに機能する場合、DTC はトランザクションをロールバックし、APPC/LU 6.2 の会話の割り当てが解除されます。

Note

TI も AP も、APPC または CPI/C SYNCPT 動詞について心配する必要もありません。 "同期ポイントを取る" という決定は、トランザクション作成者によって行われ、OLE トランザクションのセマンティクスで表され、TI LU 6.2 ブランチだけでなく、トランザクションのすべての参加者が関与します。 TI の役割は、より低いレベルにあります。TI は、DTC のリソース マネージャーとして機能します。 DTC によって使用される COM インターフェイスとホストによって認識される SNA プロトコルの間で変換され、プロトコルの 2 つのフェーズを実行し、DTC がフェーズ 1 とフェーズ 2 の間でコミットの決定を行えるようにします。

パフォーマンスの観点から見ると、ホスト更新プログラムのアトミック性を保証すると、大きなオーバーヘッドが避けられません。 2 フェーズ コミット (2PC) 用のホストへの 2 つのラウンドトリップ メッセージ フローと、参加する Windows メッセージ フロー、および DTC とホストによるトランザクション ログ (強制ディスク書き込み) があります。 多くのビジネス ロジック処理を必要としないトランザクションは、2PC を使用せずに同じトランザクションと比較すると、完了に 2 倍以上の時間がかかる場合があります。

ACID トランザクションをサポートするように TI コンポーネントを構成する必要があるのは、関連付けられているホスト トランザクション プログラム (TP) が、Windows オペレーティング システム上のリソースと一貫性を保つ必要があるミッション クリティカルなリソースを変更する場合だけです。 一貫性を保証する必要があるリソースが TP によって変更されない場合は、2PC が試行されないように TI コンポーネントを [ サポートされていないトランザクション] として構成します。 その後、TCP/IP プロトコルも自由に使用できます。 TCP/IP プロトコルは 2PC をサポートしていません。

TI コンポーネントを [ 新しいトランザクションが必要] として構成しないでください。 つまり、ホストのトランザクションをリモートで管理しており、新しいトランザクションを作成し、それに参加し、ホストとの 2PC 交換を実行するオーバーヘッドが発生しますが、TI メソッド自体はトランザクションになります。 CICS と IMS が独自のトランザクションを管理できるようにする方が効率的です。 Windows オペレーティング システム上の更新プログラムはそのトランザクションに含まれていないため、個別にコミットまたはロールバックされます。

Note

同じサーバーでの追加のビジネス ロジック処理により、スループットの制限が下がり、CPU の一部が盗まれます。 ただし、全体的な応答時間予算の範囲では、コストが比較的小さい場合があります。

関連項目

トランザクション インテグレーター パフォーマンス ガイド