XAR の計画および設計

注: 本トピックは、XDB または WebSphere MQ には該当しません。

XAR を使用するほとんどのアプリケーションでは、XAR を実装するプロセスは単純で直接的です。必要とされるのは、Enterprise Server で XAR を定義することだけです。XAR の定義の詳細については、「エンタープライズ サーバー リージョンの XA リソース (XAR) を定義するには」を参照してください。

ただし、より複雑なアプリケーションでは、必要な XAR を前もって計画してから設計し、そのようなアプリケーションの複雑性に対応する必要があります。

Micro Focus RM スイッチ モジュールを構築した後、Enterprise Server で XAR 定義に含めることができます。XAR 定義には xa_open 文字列が含まれており、基本となる RM のための固有の RM 構文をこの文字列に含めます。

RM 固有の xa_open 文字列構文のほかに、XAR 定義を細かく調整できるいくつかのオプションが用意されており、Enterprise Server でアプリケーションを実行する場合に最大の効率を実現できます。

XAR では、次の RM スイッチ モジュール タイプがサポートされています。

エンタープライズ サーバー リージョンのために XAR を構成する前に、次の点を考慮することを推奨しています。

アプリケーションには複数の XAR が必要ですか。
これは、アプリケーションがアクセスするデータベース、およびアプリケーションとデータベースがやり取りする方法によって異なります。
同一 RM スイッチ モジュール タイプの複数の XAR を必要とするアプリケーションがありますか。
アプリケーションで同一 RM スイッチ モジュール タイプの複数の XAR を必要としない場合は、XAID コンパイラ指令を使用してソース コードを再コンパイルする必要はなく、すぐにエンタープライズ サーバー リージョンにおいて XAR を定義できます。

ただし、一部のシナリオでは、同一タイプの複数の XAR が CICS または Web サービス アプリケーションのために必要となる場合があります。この場合は、複数の XAR 定義を用意するほか、XAID コンパイラ指令を使用してコードをコンパイルする必要があります。 詳細については、「複数の XAR の使用」を参照してください。

複数の別個の XAR を使用するようアプリケーションがコーディングされていますか。
一般に、CICS トランザクションまたは Web サービス要求の SQL コードは、別個のソース コード モジュールに格納されます。あるデータベースのみで使用されるモジュールもあれば、他のデータベースで使用されるモジュールもあります。この方法で構築されたコードは、適切な XAR ID の値に設定された XAID コンパイラ指令オプションを使用して、プログラム モジュールごとにコンパイルできます。これにより、コードを変更する必要がなくなります。
XAR での静的または動的 RM スイッチ モジュールの使用は最適な方法ですか。
これは、XAR がアプリケーションにどのようにアクセスされるかで異なります。詳細については、「RM スイッチ モジュールの登録」を参照してください。
トランザクションをローカルまたはグローバルに実行する必要がありますか。
これは、実行されるトランザクションのタイプによって異なります。詳細については、「SQL の xa_open 文字列構成オプション」で「LocalTX=(T|F)」セクションを参照してください。
ユーザー資格情報の取得および適用はいつどのように行われる必要がありますか。
xa_open で指定されているユーザー資格情報を使用するか、現在のユーザーに基づいてユーザー資格情報を決定するよう、XAR を構成できます。詳細については、「SQL の xa_open 文字列構成オプション」で「CICS と JCL のユーザー偽装」および「UserP=(T|F)」セクションを参照してください。
必要な XAR のいずれかがバッチ ジョブのみで使用されますか。
その場合は、これらの XAR をバッチ専用リソースとして定めることを検討してください。これにより、大量のオーバーヘッドを省き、XAID コンパイラ指令オプションを使用した再コンパイルの必要をなくすことができます。詳細については、「SQL の xa_open 文字列構成オプション」で「BatchOnly=(T|F)」セクションを参照してください。

XAR の構成の詳細については、「エンタープライズ サーバー リージョンの XAR を構成するには」を参照してください。

重要: 動的に登録された RM スイッチ モジュールを IBM DB2 または Oracle のどちらかのために使用しており、ユーザー偽装の使用を計画している場合は、アプリケーションを Enterprise Server にディプロイする前に、XAID コンパイラ指令オプションを使用してアプリケーション ソース コードを再コンパイルする必要があります。詳細については、「XAID」を参照してください。
注: 提供されている WebSphere MQ モジュールはビルドされたモジュールであり、ソース コード ファイルではありません。開発環境および実行環境の両方で使用可能です。詳細については、「WebSphere MQ」のトピックを参照してください。