マルチインスタンス キュー マネージャーでのアプリケーションの再接続の設定

XA 再接続により、トランザクション処理とバッチ プログラムの両方で、マルチインスタンス キュー マネージャー (MIQM) のアクティブな MQ キュー マネージャーへの接続が失われた場合にスタンバイ キュー マネージャーに再接続できます。

XA 再接続

XA 再接続は、SEP での処理の一部として実行されます。詳細については、「Enterprise Server SEP XA Reconnect」を参照してください。環境変数 ES_XA_RECONNECT がいずれかの値に設定されている場合、接続が失われたときにシステムで XA リソースへの再接続が試行されます。MIQM 構成のコンテキストでアクティブなインスタンスへの接続が失われた場合は、ES_XA_MQ が MIQM に設定されていれば、SEP での XA 再接続処理で別の MQ インスタンスを新たにアクティブにする切り替えが試行されます。

マルチインスタンス キュー マネージャーの XA 再接続の構成

XA 再接続を MIQM に対して追加で構成するには、3 つの環境変数 ES_XA_RECONNECT、ES_XA_MQ、および MQSERVER を指定する必要があります。

環境変数 ES_XA_MQ を使用して、アクティブなキュー マネージャーへの接続が失われた際にスタンバイ キュー マネージャーに再接続できるようにします。

ES_XA_MQ=MIQM

さらに、システムで少なくとも 2 つの接続がリストされていることを検証できるように、環境変数 MQSERVER を設定する必要があります。次に例を示します。

MQSERVER=CHANNEL1/TCP/10.120.99.999(1414),10.120.98.888(1414)

XA エントリの定義

システムがリージョンの起動時に MIQM のアクティブなキュー マネージャーに接続できるようにするには、MQSERVER 環境変数にリストされている最初のアドレスを指す XA エントリを作成する必要があります。

重要: SIT の MQ 関連のエントリを使用して MQ を構成することはできません。XA 接続は、Micro Focus Directory Server (MFDS) または Enterprise Server Common Web Administration (ESCWA) を使用して、リージョンの XA リソースの一部として指定する必要があります。

アクティブな MIQM MQ インスタンスの XA エントリの例を次に示します。

ID: 
MQPROD
Open string
TPM=ESCICS,AXLIB=casaxlib,QMNAME=MIQM001,uid=mq01@MYCORPDOM,pwd=MQadmin,CHANNEL=CHANNEL1,TRPTYPE=TCP,CONNAME=10.120.99.999(1414)

XA エントリがインストールされた時点で、システムはスタンバイ エントリの XA エントリを作成します。これは、名前と CONNAME を除いてアクティブな定義と同じになります。

上記の MQPROD がすでに指定されている場合、動的に作成されるインスタンス エントリは次のようになります。

ID: 
MQPRO#
Open string
TPM=ESCICS,AXLIB=casaxlib,QMNAME=MIQM001,uid=mq01@MYCORPDOM,pwd=MQadmin,CHANNEL=CHANNEL1,TRPTYPE=TCP,CONNAME=10.120.88.888(1414)

ID と CONNAME が異なる点に注目してください。このエントリはインストールされますが、最初のアクティブなインスタンスへの接続が失われない限りアクティブになりません。接続が失われると、スタンバイ MQ インスタンスがアクティブになってアクティブな接続と置き換わり、それまでアクティブだったインスタンスがスタンバイ インスタンスになります。

両方の接続がアクティブになっているように見えますが、アクティブな方だけが XA トランザクションに登録されています。

注: キュー マネージャーを最初の状態に戻すには、現在アクティブなキュー マネージャーを停止します。エンタープライズ サーバーで元のキュー マネージャーへの接続が回復されます。