bea ホーム | 製品 | dev2dev | support | askBEA |
![]() |
![]() |
|
![]() |
e-docs > Tuxedo > Tuxedo アプリケーションの設定 > トランザクション対応の ATMI アプリケーションのコンフィギュレーション |
Tuxedo アプリケーションの設定
|
トランザクション対応の ATMI アプリケーションのコンフィギュレーション
ここでは、次の内容について説明します。
注記 BEA Tuxedo CORBA 環境でトランザクションを使用する方法については、『BEA Tuxedo CORBA トランザクション』を参照してください。
UBBCONFIG ファイルを ATMI トランザクションに対応させて変更する
アプリケーションの UBBCONFIG ファイルをトランザクションに対応させるには、RESOURCES、MACHINES、GROUPS、および SERVICES セクションを変更する必要があります。
RESOURCES セクションでグローバル・トランザクションのパラメータを指定する
次の表では、RESOURCES セクションに指定するトランザクション関連のパラメータを説明します。
MACHINES セクションでトランザクション・ログ (TLOG) を作成する
TLOG を作成するには、以下のタスクを実行します。
UDL を作成する
汎用デバイス・リスト (UDL: Universal Device List) は、BEA Tuxedo ファイルシステムの地図のようなものです。UDL は、アプリケーションの起動後、共用メモリにロードされます。TLOG は、トランザクションが終了するまで、トランザクションに関する情報が保持されているログを参照します。UDL 内に TLOG デバイス用のエントリを作成するには、グローバル・トランザクションを使用して各マシンに UDL を作成します(TLOGDEVICE が 2 台のマシン間でミラーリングされる場合は、一方のマシンに UDL を作成するだけで十分です)。起動時に、BBL は TLOG を初期化し、オープンします。
UDL を作成するには、アプリケーションを起動する前に次のコマンドを実行します。
tmadmin -c crdl -z config -b blocks
注記 デバイスが既に存在する場合、このコマンドは失敗します。
config の値は、UDL の作成先デバイスの絶対パス名です。これは、コンフィギュレーション・ファイルの MACHINES セクションにある TLOGDEVICE パラメータの値と一致している必要があります。blocks には、デバイス上に割り当てるブロックの数を指定します。
注記 blocks の値が TLOGSIZE の値より小さいと、性能が低下する可能性があります。したがって、blocks には TLOGSIZE より大きい値を指定してください。たとえば、TLOGSIZE に 200 ブロックが指定されている場合、-b500 を指定すると、性能は低下しません。
TLOG の保存方法については、『BEA Tuxedo システムのインストール』を参照してください。
MACHINES セクションでトランザクション関連のパラメータを定義する
グロ―バル・トランザクション・ログ (TLOG) を定義するには、UBBCONFIG ファイルの MACHINES セクションでパラメータをいくつか設定する必要があります。
これらのパラメータのうち、TLOGDEVICE については、TLOG が必要な各マシン上に TLOGDEVICE のデバイス・リスト・エントリを手動で作成しなければなりません。これは、TUXCONFIG がロードされる前でも後でも作成できますが、必ず、システムを起動する前に作成してください。
次の表では、MACHINES セクションに指定するトランザクション関連のパラメータを説明します。
Domains トランザクション・ログを作成する Domains ゲートウェイ・グループを起動する前に、Domains トランザクション・ログを作成する必要があります。Domains トランザクション・ログは、現在のマシン (DMADM を実行中のマシン) の指定されたローカル・ドメインに作成してください。ログを作成するには、次のコマンドを入力します。 dmadmin crdmlog crdlog -d local_domain_name このコマンドでは、DMCONFIG ファイルで指定したパラメータが使用されます。指定したローカル・ドメインが現在のマシン上でアクティブであるか、またはログがすでに存在する場合、このコマンドは失敗します。トランザクション・ログがない場合は、Domains ゲートウェイ・グループの起動時に作成されます。 関連項目
GROUPS セクションでリソース・マネージャとトランザクション・マネージャ・サーバを定義する
GROUPS セクションのパラメータにより、特定のグループに対してトランザクション・マネージャ・サーバ (TMS) およびリソース・マネージャ (RM) の属性を定義できます。
OPENINFO=”ORACLE_XA:
Oracle_XA+Acc=P/Scott/*****+SesTm=30+LogDit=/tmp”
GROUPS セクションの例
以下は、BEA Tuxedo システムに同梱されている銀行業務サンプル・アプリケーション bankapp の GROUPS セクションの例です。
BANKB1 GRPNO=1 TMSNAME=TMS_SQL TMSCOUNT=2
OPENINFO=”TUXEDO/SQL:APPDIR/bankdl1:bankdb:readwrite”
GROUPS セクションの例でのトランザクション値
次の表では、GROUPS セクションの例のトランザクション値を説明します。
TMSNAME、TMSCOUNT、OPENINFO、および CLOSEINFO パラメータの特性 次の表では、TMSNAME、TMSCOUNT、OPENINFO、および CLOSEINFO パラメータの特性を説明します。
SERVICES セクションでサービスに対するトランザクションの開始を有効にする
状況によっては、SERVICES セクションに AUTOTRAN、TRANTIME、および ROUTING という 3 つのトランザクション関連パラメータを設定しなければならない場合があります。
注記 一般的に、サービスは大規模なトランザクションに参加するため、トランザクションのイニシエータとしてはクライアントが最も適しています。
AUTOTRAN、TRANTIME、および ROUTING パラメータの特性
次の表では、AUTOTRAN、TRANTIME、および ROUTING パラメータの特性を説明します。
トランザクションをサポートするように Domains コンフィギュレーション・ファイルを変更する
ドメインを介してトランザクションを有効にするには、Domains コンフィギュレーション・ファイル (DMCONFIG) の DM_LOCAL および DM_IMPORT セクション内のパラメータを設定する必要があります。DM_LOCAL セクションのエントリでは、ローカル・ドメインの特性を定義します。DM_IMPORT セクションのエントリでは、インポートされたサービスや、リモート・ドメインで使用可能なサービスを定義します。
DMTLOGDEV、DMTLOGNAME、DMTLOGSIZE、MAXRAPTRAN、および MAXTRAN パラメータの特性
Domains コンフィギュレーション・ファイルの DM_LOCAL セクションでは、ローカル・ドメインおよびそれに関連するゲートウェイ・グループを指定します。ゲートウェイ・グループ (ローカル・ドメイン) ごとに、そのグループで実行するドメイン・ゲートウェイ・プロセスに必要なパラメータを指定するエントリを作成する必要があります。
次の表では、このセクションの 5 つのトランザクション関連パラメータ (DMTLOGDEV、DMTLOGNAME、DMTLOGSIZE、MAXRAPTRAN、および MAXTRAN) を説明します。
AUTOTRAN および TRANTIME パラメータの特性 Domains コンフィギュレーション・ファイルの DM_IMPORT セクションでは、インポートされ、リモート・ドメインで使用可能になったサービスに関する情報を提供します。各リモート・サービスは、特定のリモート・ドメインに関連付けられています。 DM_IMPORT セクションに、トランザクションをサポートする AUTOTRAN パラメータと TRANTIME パラメータを設定することもできます。次の表では、これらのパラメータを説明します。
UBBCONFIG ファイルの RESOURCES セクションでは、MAXTRANTIME という追加のトランザクション・タイムアウト・プロパティも使用できます。MAXTRANTIME タイムアウト値が TRANTIME タイムアウト値、またはトランザクションを開始する際に tpbegin(3c) 呼び出しで渡されたタイムアウト値よりも小さい場合、トランザクションのタイムアウトは MAXTRANTIME 値まで減少します。MAXTRANTIME は BEA Tuxedo 8.0 以前を実行するマシン上で開始されるトランザクションには影響を与えません。ただし、BEA Tuxedo 8.1 以降を実行するマシンがトランザクションの影響を受ける場合は、そのノードに対して設定されている MAXTRANTIME 値までトランザクション・タイムアウト値が制限 (必要に応じて減少) されます。 Domains コンフィギュレーションの場合は、以下のようなトランザクション処理のシナリオが考えられます。
TRANTIME または tpbegin() のタイムアウト値が MAXTRANTIME 以下の場合、トランザクション処理のシナリオは前述のようになります。
TRANTIME または tpbegin() のタイムアウト値が MAXTRANTIME より大きい場合、影響を受けるノードはトランザクションのタイムアウト値を MAXTRANTIME まで減少します。MAXTRANTIME タイムアウト値を超えると、影響を受けるノードは TMS タイムアウト・メッセージを生成します。
MAXTRANTIME の詳細については、UBBCONFIG(5) の RESOURCES セクションにある MAXTRANTIME、または TM_MIB(5) の T_DOMAIN クラスにある TA_MAXTRANTIME を参照してください。
例: トランザクションを使用する分散アプリケーション
この節では、3 つのサイトに分散される、トランザクション対応の bankapp アプリケーションを定義するコンフィギュレーション・ファイル例を示します。このアプリケーションには、次の特徴があります。
ファイルは、7 つのセクション (RESOURCES、MACHINES、GROUPS、NETWORK、SERVERS、SERVICES、および ROUTING) で構成されます。
RESOURCES セクションの例
次のリストは、RESOURCES セクションの例です。
コード リスト5-1 RESOURCES セクションの例
*RESOURCES
#
IPCKEY 99999
UID 1
GID 0
PERM 0660
MAXACCESSERS 25
MAXSERVERS 25
MAXSERVICES 40
MAXGTT 20
MASTER SITE3, SITE1
SCANUNIT 10
SANITYSCAN 12
BBLQUERY 180
BLOCKTIME 30
DBBLWAIT 6
OPTIONS LAN, MIGRATE
MODEL MP
LDBAL Y
このリストでは、次の点に注意してください。
MACHINES セクションの例
次のリストは、MACHINES セクションの例です。
コード リスト5-2 MACHINES セクションの例
*MACHINES
giselle LMID=SITE1
TUXDIR=”/usr/tuxedo”
APPDIR=”/usr/home”
ENVFILE=”/usr/home/ENVFILE”
TLOGDEVICE=”/usr/home/TLOG”
TLOGNAME=TLOG
TUXCONFIG=”/usr/home/tuxconfig”
TYPE=”3B600”
romeo LMID=SITE2
TUXDIR=”/usr/tuxedo”
APPDIR=”/usr/home”
ENVFILE=”/usr/home/ENVFILE”
TLOGDEVICE=”/usr/home/TLOG”
TLOGNAME=TLOG
TUXCONFIG=”/usr/home/tuxconfig”
TYPE=”SEQUENT”
juliet LMID=SITE3
TUXDIR=”/usr/tuxedo”
APPDIR=’/usr/home”
ENVFILE=”/usr/home/ENVFILE”
TLOGDEVICE=”/usr/home/TLOG”
TLOGNAME=TLOG
TUXCONFIG=”/usr/home/tuxconfig”
TYPE=”AMDAHL”
このリストでは、次の点に注意してください。
GROUPS セクションおよび NETWORK セクションの例
次のリストは、GROUPS セクションおよび NETWORK セクションの例です。
コード リスト5-3 GROUPS セクションおよび NETWORK セクションの例
*GROUPS
DEFAULT: TMSNAME=TMS_SQL TMSCOUNT=2
BANKB1 LMID=SITE1 GRPNO=1
OPENINFO=”TUXEDO/SQL:/usr/home/bankdl1:bankdb:readwrite”
BANKB2 LMID=SITE2 GRPNO=2
OPENINFO=”TUXEDO/SQL:/usr/home/bankdl2:bankdb:readwrite”
BANKB3 LMID=SITE3 GRPNO=3
OPENINFO=”TUXEDO/SQL:/usr/home/bankdl3:bankdb:readwrite”
*NETWORK
SITE1 NADDR=”0X0002ab117B2D4359”
BRIDGE=”/dev/tcp”
NLSADDR=”0X0002ab127B2D4359”
SITE2 NADDR=”0X0002ab117B2D4360”
BRIDGE=”/dev/tcp”
NLSADDR=”0X0002ab127B2D4360”
SITE3 NADDR=”0X0002ab117B2D4361”
BRIDGE=”/dev/tcp”
NLSADDR=”0X0002ab127B2D4361”
このリストでは、次の点に注意してください。
SERVERS、SERVICES、および ROUTING セクションの例
次のリストは、SERVERS、SERVICES、および ROUTING セクションの例です。
コード リスト5-4 SERVERS、SERVICES、および ROUTING セクションの例
*SERVERS
DEFAULT: RESTART=Y MAXGEN=5 REPLYQ=N CLOPT=”-A”
TLR SRVGRP=BANKB1 SRVID=1 CLOPT=”-A -- -T 100"
TLR SRVGRP=BANKB2 SRVID=3 CLOPT=”-A -- -T 400"
TLR SRVGRP=BANKB3 SRVID=4 CLOPT=”-A -- -T 700"
XFER SRVGRP=BANKB1 SRVID=5 REPLYQ=Y
XFER SRVGRP=BANKB2 SRVID=6 REPLYQ=Y
XFER SRVGRP=BANKB3 SRVID=7 REPLYQ=Y
*SERVICES
DEFAULT: AUTOTRAN=N
WITHDRAW ROUTING=ACCOUNT_ID
DEPOSIT ROUTING=ACCOUNT_ID
TRANSFER ROUTING=ACCOUNT_ID
INQUIRY ROUTING=ACCOUNT_ID
*ROUTING
ACCOUNT_ID FIELD=ACCOUNT_ID BUFTYPE=”FML”
RANGES=”MON - 9999:*,
10000 - 39999:BANKB1
40000 - 69999:BANKB2
70000 - 100000:BANKB3
“”
このリストでは、次の点に注意してください。
関連項目
![]() |
![]() |
![]() |
![]() |
||
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |