bea ホーム | 製品 | dev2dev | support | askBEA |
![]() |
![]() |
|
![]() |
e-docs > Tuxedo > Tuxedo CORBA トランザクション > トランザクションの管理 |
Tuxedo CORBA トランザクション
|
トランザクションの管理
ここでは、以下の内容について説明します。
始める前に、トランザクションについてを読む必要があります。
注記 管理情報は、BEA Tuxedo ORB に対する初期オブジェクト・リファレンスを取得するために、Bootstrap オブジェクトまたは CORBA インターオペラブル・ネーミング・サービス (INS) のいずれを使用している場合でも適用されます。
UBBCONFIG ファイルをトランザクションに対応させて変更する
ここでは、以下の内容について説明します。
手順の要約
アプリケーションの UBBCONFIG ファイルをトランザクションに対応させるには、RESOURCES、MACHINES、GROUPS、および INTERFACES または SERVICES セクションを変更する必要があります。
UBBCONFIG ファイルのこれらのセクションの変更については、『BEA Tuxedo アプリケーションの設定』の「コンフィギュレーション・ファイルの作成」を参照してください。
ステップ 1: RESOURCES セクションでアプリケーション全体のトランザクションを指定する
表 5-1 では、コンフィギュレーション・ファイルの RESOURCES セクションで指定可能なトランザクション関連のパラメータを説明しています。
ステップ 2: トランザクション・ログ (TLOG) を作成する ここでは、トランザクションが終了するまで、トランザクションに関する情報が保持されているトランザクション・ログ (TLOG) の作成について説明します。 UDL を作成する 汎用デバイス・リスト (UDL) は、BEA Tuxedo ファイル・システムの地図のようなものです。UDL は、アプリケーションの起動後、共用メモリにロードされます。UDL 内に TLOG デバイス用のエントリを作成するには、グローバル・トランザクションを使用して各マシンに UDL を作成します。TLOGDEVICE が 2 台のマシン間でミラーリングされる場合は、一方のマシンに UDL を作成するだけで十分です。BBL は、起動時に TLOG を初期化してオープンします。 UDL を作成するには、アプリケーションを起動する前に次の形式のコマンドを実行します。 tmadmin -c crdl -z config -b blocks この例の説明は次のとおりです。
注記 通常、blocks で指定する値は、TLOGSIZE より小さい値にはしません。たとえば、TLOGSIZE に 200 ブロックが指定されている場合、-b 500 を指定すると、性能は低下しません。
TLOG の保存方法については、『BEA Tuxedo システムのインストール』を参照してください。
MACHINES セクションでトランザクション関連のパラメータを定義する
UBBCONFIG ファイルの MACHINES セクションでパラメータをいくつか設定して、グロ―バル・トランザクション・ログ (TLOG) を定義できます。TLOGDEVICE のデバイス・リストのエントリは、TLOG が必要な各マシンで手動で作成する必要があります。これは、TUXCONFIG がロードされる前でも後でも作成できますが、必ずシステムを起動する前に作成してください。
注記 トランザクションを使用しない場合、TLOG パラメータは不要です。
表 5-2 では、コンフィギュレーション・ファイルの MACHINES セクションで指定可能なトランザクション関連のパラメータを説明しています。
Domains トランザクション・ログを作成する (BEA Tuxedo ATMI サーバのみ) ここで説明することは、ATMI サーバにのみ適用されます。 Domains ゲートウェイ・グループを開始する前に、次のコマンドで Domains トランザクション・ログを作成できます。 Domains トランザクション・ログは、現在のマシン (dmadmin を実行中のマシン) の指定されたローカル・ドメインに作成してください。このコマンドでは、DMCONFIG ファイルで指定したパラメータが使用されます。指定のローカル・ドメインが現在のマシン上でアクティブであるか、ログがすでに存在する場合は、このコマンドは失敗します。トランザクション・ログがない場合は、Domains ゲートウェイ・グループの起動時に作成されます。 ステップ 3: GROUPS セクションでリソース・マネージャ (RM) とトランザクション・マネージャ・サーバを定義する GROUPS セクションへの追加は、以下の 2 つのカテゴリに分類されます。
dmadmin(1) crdmlog (crdlog) -d local_domain_name
ヌル・トランザクション・マネージャ・サーバは、リソース・マネージャと通信しません。このサーバは、回復可能な実際の環境でアプリケーションをテストする前に、トランザクションに関与するプリミティブをアプリケーションで実際に使用するために使用します。TMS と呼ばれるこのサーバは、リソース・マネージャと会話せずに単純にトランザクションを開始、コミット、および終了します。
GROUPS セクションの例
次の GROUPS セクションの例は、bankapp 銀行取引アプリケーションから抜粋したものです。
BANKB1 GRPNO=1 TMSNAME=TMS_SQL TMSCOUNT=2
OPENINFO=”TUXEDO/SQL:<APPDIR>/bankdl1:bankdb:readwrite”
表 5-3 では、この GROUPS セクションの例で指定したトランザクション値について説明します。
TMSNAME、TMSCOUNT、OPENINFO、および CLOSEINFO パラメータの特性 表 5-4 では、TMSNAME、TMSCOUNT、OPENINFO、および CLOSEINFO パラメータの特性を説明します。
ステップ 4: トランザクションを開始するためのインターフェイスを有効にする トランザクションを開始するためのインターフェイスを有効にするには、UBBCONFIG ファイル内のセクションを変更します。変更対象のセクションは、BEA Tuxedo CORBA サーバをコンフィギュレーションするか、BEA Tuxedo ATMI サーバをコンフィギュレーションするかによって異なります。
INTERFACES セクションの変更 (BEA Tuxedo CORBA サーバ)
UBBCONFIG ファイルの INTERFACES セクションは、BEA Tuxedo CORBA インターフェイスをサポートします。
注記 この機能を正しく動作させるには、設計者と管理者の間の共同作業が不可欠です。インターフェイスの ICF で開発者が定義したトランザクション方針を知らずに、管理者がこの値を Y に設定すると、パラメータを実際に実行した場合の影響が分からなくなる可能性があります。
表 5-5 では、AUTOTRAN、TRANTIME、および FACTORYROUTING パラメータの特性を説明します。
SERVICES セクションの変更 (BEA Tuxedo ATMI サーバ) 以下の 3 つのパラメータは、SERVICES セクションに指定するトランザクション関連のパラメータです。
注記 一般的に、サービスは大規模なトランザクションに参加する可能性があるため、トランザクションのイニシエータとしてはクライアントが最も適しています。
表 5-6 では、AUTOTRAN、TRANTIME、および ROUTING パラメータの特性を説明します。
トランザクションをサポートするように Domains コンフィギュレーション・ファイルを変更する (BEA Tuxedo CORBA サーバ)
ここでは、以下の内容について説明します。
ドメインを介してトランザクションを有効にするには、Domains コンフィギュレーション・ファイル (DMCONFIG) の DM_LOCAL_DOMAINS および DM_REMOTE_SERVICES セクション内のパラメータを設定する必要があります。DM_LOCAL_DOMAINS セクションのエントリでは、ローカル・ドメインの特性を定義します。DM_REMOTE_SERVICES セクションのエントリでは、インポートされたサービスや、リモート・ドメインで使用可能なサービスに関する情報を定義します。
DMTLOGDEV、DMTLOGNAME、DMTLOGSIZE、MAXRDTRAN、および MAXTRAN パラメータの特性
Domains コンフィギュレーション・ファイルの DM_LOCAL_DOMAINS セクションでは、ローカル・ドメインおよびそれに関連するゲートウェイ・グループを指定します。このセクションは、ゲートウェイ・グループ (ローカル・ドメイン) ごとにエントリを持つ必要があります。各エントリは、そのグループで実行されている Domains ゲートウェイ・プロセスで必要なパラメータを指定します。
表 5-7 では、このセクションの 5 つのトランザクション関連パラメータ (DMTLOGDEV、DMTLOGNAME、DMTLOGSIZE、MAXRDTRAN、および MAXTRAN) を説明します。
AUTOTRAN および TRANTIME パラメータの特性 (BEA Tuxedo CORBA および ATMI サーバ) Domains コンフィギュレーション・ファイルの DM_REMOTE_SERVICES セクションでは、インポートされ、リモート・ドメインで使用可能になったサービスに関する情報を示します。各リモート・サービスは、特定のリモート・ドメインに関連付けられています。 表 5-8 では、このセクションに指定するトランザクション関連のパラメータ (AUTORUN および TRANTIME) を説明します。
トランザクションを使用する分散アプリケーションの例
ここでは、以下の内容について説明します。
ここでは、トランザクションを有効にし、アプリケーションを 3 つのサイトに分散するサンプル CORBA アプリケーションのサンプル・コンフィギュレーション・ファイルを説明します。このアプリケーションには、以下の機能があります。
ファイルは、7 つのセクション (RESOURCES、MACHINES、GROUPS、NETWORK、SERVERS、SERVICES、および ROUTING) で構成されます。
RESOURCES セクション
リスト5-1 に示されている 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 セクション
リスト5-2 に示されている MACHINES セクションは、以下のパラメータを指定します。
コード リスト 5-2 MACHINES セクションの例
*MACHINES
Gisela 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 セクション
リスト5-3 に示されている 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 セクション
リスト5-4 に示されている 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
“”
![]() |
![]() |
![]() |
![]() |
||
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |