アプリケーション開発の手引き


X/Open XA インターフェース・プログラミングに関する考慮事項

X/Open(R) XA インターフェースは、複数のリソースの変更を調整すると同時にこれらの変更の保全性を確保するさいの標準とされています。 トランザクション・プロセス・モニター として知られるソフトウェア製品は一般に XA インターフェースを使用し、 DB2 はこのインターフェースをサポートするので、そのような環境では資源として 1 つ以上の DB2 データベースに同時にアクセスできます。データベース・マネージャーで提供されている XA インターフェース・サポートの概念およびそのインプリメントについては、 管理の手引き: 計画 を参照してください。ご使用のプラットフォームが X/Open XA インターフェースをサポートしているかどうか判別するには、 アプリケーション構築の手引き を参照してください。

TP モニターから独立して実行されているアプリケーションと異なるモデルがトランザクション・プロセスに使用されるため、分散トランザクション処理 (DTP) 環境で操作を行う場合、 DB2 には特別な考慮が必要となります。このトランザクション・プロセスのモデルの特性を次に示します。

  1. 複数の種類の回復可能なリソース (DB2 データベースなど) をトランザクション内で変更できます。
  2. 実行されているトランザクションの保全性を確保するため、2 フェーズ・コミットを使用してリソースが更新されます。
  3. アプリケーション・プログラムは、トランザクションのコミットまたはロールバックの要求を、リソースの管理プログラムではなく TP モニター製品に送ります。たとえば、CICS 環境では、アプリケーションは EXEC CICS SYNCPOINT を発行してトランザクションをコミットするので、EXEC SQL COMMIT を DB2 に発行することは無効かつ不要です。
  4. トランザクションの実行許可は、TP モニターと関連するソフトウェアにより事前に選別されるため、 DB2 などのリソース管理プログラムは TP モニターを 1 つの許可ユーザーとみなします。たとえば、CICS トランザクションの使用には必ず CICS による確認が必要であり、データベースへアクセスする特権は、 CICS アプリケーションを呼び出すエンド・ユーザーではなく CICS に付与されなければなりません。
  5. 複数のプログラム (トランザクション) は通常待機させられ、データベース・サーバーで実行されます (DB2 では、単一で、長時間にわたり実行されるアプリケーション・プログラムとなります)。

この環境の固有の性質により、ここで実行するようにコーディングされたアプリケーションに対する DB2 の動作および要件は、特殊なものとなります。

上記の制限は、XA インターフェースを使用した TP モニター環境で実行されるアプリケーションに適用されることに注意してください。 DB2 データベースが XA インターフェースによる使用を定義されていない場合、これらの制限は適用されませんが、 DB2 が次のトランザクションの実行に悪影響を与えることのないようにトランザクションをコーディングする必要があることはいうまでもありません。

アプリケーション連係

実行可能なアプリケーションを作成するには、アプリケーション・オブジェクトを、言語ライブラリー、オペレーティング・システム・ライブラリー、通常のデータベース・マネージャー・ライブラリー、および TP モニターとトランザクション・マネージャー製品のライブラリーとリンクする必要があります。


[ ページのトップ | 前ページ | 次ページ | 目次 | 索引 ]