MQDは、XA/Openが規定するXAインタフェースにより、トランザクション処理モニタであるInterstageのコンポーネントトランザクションサービスおよびデータベース連携サービスと連携したアプリケーションの実行を可能にしています。
MQDを使用するアプリケーションが、Interstageのトランザクション機能を使用するためには、アプリケーションの実行に先立って、事前に以下の作業を行っておく必要があります。
ワークユニット定義の登録
リソースマネージャ情報の登録
XA連携プログラムの作成
リソース管理プログラムの作成と登録
APMの作成
XAライブラリの結合
なお、Interstageのトランザクション機能の詳細については、“アプリケーション作成ガイド(データベース連携サービス編)”および“リファレンスマニュアル(コマンド編)”, “リファレンスマニュアル(API編)”, “チューニングガイド”を参照してください。
ワークユニットは、Interstageのアプリケーションの実行環境を定義します。このワークユニット定義には、後述のリソース定義名およびAPM名を記述します。
表6.4 リソースマネージャ情報に示されるMQD用のリソースマネージャ情報(RM情報とも呼びます)をワークユニット定義で示されるリソース定義名に登録しておく必要があります。
項目 | 指定内容 | 説明 |
---|---|---|
リソース定義名 | NAME=リソース定義名 | リソース定義名を指定します。 |
RM名 | XA_MQD | MQDのリソースマネージャ名を指定します。 |
オープン文字列 | MQD:MQDシステム名 | アプリケーションが使用するMQDのMQDシステム名を指定します。 |
クローズ文字列 | 不要 | なし。 |
MQD用のXA連携プログラムが必要です。このプログラムは、MQDのXAスイッチの構造体名“mqd_xa_switch”を入力情報にして、Interstageのotsmkxapgmコマンドを実行して作成します。
otsmkxapgmコマンドの実行例を以下に示します。
otsmkxapgm -s mqd_xa_switch -r "/libpath:'$MQD\lib'libmqdqm.lib" -o libxa_mqd.dll $MQD: MQDインストール先フォルダ
otsmkxapgm -t thread -s mqd_xa_switch -o xa_mqd.o
次に、XA連携プログラムとMQDのXAライブラリを入力にしてMQD用のリソース管理プログラムを作成します。リソース管理プログラムは、Interstageのotslinkrscコマンドを実行して作成します。また、作成したリソース管理プログラムをInterstageのotssetrscコマンドを実行してCORBAサービスへ登録する必要があります。
otslinkrscコマンドの実行例を以下に示します。
otslinkrsc -l libxa_mqd.lib -r "/libpath:'$MQD\lib'libmqdqm.lib" -o MQD_rscmng.exe $MQD: MQDインストール先フォルダ
otslinkrsc -t thread -l xa_mqd.o -r "-L/opt/FJSVmqd/lib -lmqdqm" -o MQD_rscmng
次に、XA連携プログラムとMQDのXAライブラリを入力にしてMQD用のAPM(Application Program Manager)を作成します。APMは、Interstageのtdlinkapmコマンドを実行して作成します。tdlinkapmコマンドの実行例を以下に示します。
tdlinkapm -l libxa_mqd.lib -r "$MQD\lib\libmqdqm.lib" -o MQDapm $MQD: MQDインストール先フォルダ
tdlinkapm -l xa_mqd.o -r "-L/opt/FJSVmqd/lib -lmqdqm" -o MQDapm
XAライブラリは、Interstageアプリケーションの結合時に使用します。MQDのXAライブラリ名を以下に示します。
$MQD\lib\libmqdqm.lib $MQD: MQDインストール先フォルダ
/opt/FJSVmqd/lib/libmqdqm.so