bea ホーム | 製品 | dev2dev | support | askBEA
BEA Logo Tuxedo
 ドキュメントのダウンロード   サイトマップ   用語集 
検索
0

Tuxedo アプリケーションの設定

 Previous Next Contents View as PDF  

ワークステーション・クライアントの設定

ここでは、次の内容について説明します。

 


ワークステーション・クライアントの定義

ワークステーション・クライアントを BEA Tuxedo アプリケーションに参加させるには、対応するアプリケーション環境が必要です。BEA Tuxedo システムには、次の表に示すような、環境設定用の変数が用意されています。TUXDIR および WSNADDR は必須の変数であり、それ以外は、オプションの変数です。WSENVFILE 以外のパラメータには、デフォルト値が用意されています。

説明

設定する環境変数

アプリケーション・パスワード。パスワードによるセキュリティ機能を実装するアプリケーションでのみ有効です。スクリプトから実行するクライアントは、この変数を使用してアプリケーション・パスワードを取得できます。

APP_PW (オプション)

リンク・レベルの暗号化に使用する暗号化キーの最上位ビットの最大数。設定できる値は、0 (暗号を使用しない場合) か、40、56、または 128 (指定された番号が暗号化キーの最上位ビット数の場合) です。

TMMAXENCRYPTBITS (オプション)

リンク・レベルの暗号化に使用する暗号化キーの最上位ビットの最小数。設定できる値は、0 (暗号を使用しない場合) か、40、56、または 128 (指定された番号が暗号化キーの最上位ビット数の場合) です。

TMMINENCRYPTBITS (オプション)

WSRPLYMAX 値に達した場合に応答を格納するディレクトリ。デフォルト値は作業ディレクトリです。

TMPDIR (オプション)

ワークステーション・マシンが、割り当てられた MBSTRING 型付きバッファに格納するコードセットの符号化名を指定します。

TPMBENC にはデフォルト値はありません。MBSTRING 型付きバッファを使用するワークステーション・クライアントの場合、ワークステーション・マシン上で TPMBENC を定義する必要があります。

TPMBENC (オプション)

ワークステーション・マシンが、受信した MBSTRING バッファのデータを、TPMBENC で定義された符号化に自動的に変換するかどうかを指定します。デフォルトでは自動変換は無効になっています。受信した MBSTRING バッファのデータは、符号化の変換はされないままでワークステーション・クライアントに配信されます。TPMBACONVY (yes) などの値に設定すると、自動変換が有効になります。

TPMBACONV (オプション)

このワークステーション上での BEA Tuxedo システム・ソフトウェアの場所。この環境変数を設定しないと、クライアントは接続を確立できません。

TUXDIR (必須)

ワークステーション・マシンが文書型定義 (DTD)、XML スキーマ、およびエンティティ・ファイルをキャッシュするかどうかを指定します。デフォルトでは、キャッシングは有効になっています (Y)。URLENTITYCACHINGN (no) に設定すると、キャッシングは無効になります。

URLENTITYCACHING (オプション)

ワークステーション・マシンが DTD、スキーマ、およびエンティティ・ファイルをキャッシュするディレクトリを指定します。URLENTITYCACHEDIR 変数には、キャッシュされるファイルの絶対パス名を指定します。URLENTITYCACHEDIR を指定しない場合、デフォルトのディレクトリは URLEntityCachedir になります。このディレクトリはワークステーション・クライアント・プロセスの現在の作業ディレクトリ内に作成され、適切な書き込み権が設定されています。

URLENTITYCACHEDIR (オプション)

使用するネットワーク・デバイス。デフォルト値は空文字列です。

WSDEVICE (オプション)

すべての環境変数を設定するファイルの名前。この変数のデフォルト値はありません。

WSENVFILE (オプション)

ワークステーション・クライアントがワークステーション・リスナまたはワークステーション・ハンドラに接続するのに使用するネットワーク・アドレス。この変数および WSFRANGE 環境変数は、TCP/IP ポート (ワークステーション・クライアントがアウトバウンド接続を行う前にバインドするときのバインド先) の範囲を指定します。このアドレスは、TCP/IP アドレスでなければなりません。

WSFADDR (オプション)

ワークステーション・クライアントのプロセスが、アウトバウンド接続を確立する前にバインドする TCP/IP ポートの範囲。範囲のベースとなるアドレスは、WSFADDR パラメータで指定します。

WSFRANGE (オプション)

クライアントがコンタクトする WSL の 1 つまたは複数のネットワーク・アドレスのリスト。このアドレスは、アプリケーション・コンフィギュレーション・ファイルにある WSL プロセスのアドレスと一致する必要があります。

WSNADDR (必須)

アプリケーションの応答を一時的に保存するためのコア・メモリのサイズ。デフォルト値は 256,000 バイトです。

WSRPLYMAX (オプション)

マシンのタイプ。WSL が動作するマシンのコンフィギュレーション・ファイルで指定されている TYPE の値と同じ値を WSTYPE に指定すると、符号化/復号化は行われません。デフォルト値は空文字列です。

WSTYPE (オプション)


 

 


ワークステーション・クライアントの最大数の設定

アプリケーションにワークステーション・クライアントを参加させるには、UBBCONFIG ファイルの MACHINES セクションで MAXWSCLIENTS パラメータを指定する必要があります。

MAXWSCLIENTS は、Workstation 機能専用の唯一のパラメータです。MAXWSCLIENTS に指定された値は、BEA Tuxedo システムの起動時に通知され、ワークステーション・クライアント用に確保するアクセサ・スロットの数が決まります。ネイティブ・クライアントの場合、各アクセサ・スロットに必要なセマフォは 1 つです。一方、ワークステーション・ハンドラ・プロセス (ワークステーション・クライアントの代わりにネイティブ・プラットフォーム上で実行するプロセス) は、ワークステーション・クライアントのアクセスを単一のアクセサ・スロットに多重化するので、必要なセマフォは 1 つだけです。この点も、Workstation コンポーネントの利点の 1 つです。多くのクライアントをネイティブ・プラットフォームからワークステーションに移動することによって、アプリケーションで使用する IPC 資源を減らすことができます。

MAXWSCLIENTS は、MAXACCESSERS に指定された数のうち、指定された数のアクセサ・スロットを使用します。MAXWSCLIENTS の設定時には、ネイティブ・クライアントとサーバを収容するために必要な数のスロットを残しておく必要があります。MAXWSCLIENTS 値が MAXACCESSERS 値を超えると、tpinit() の実行時にネイティブ・クライアントとサーバが失敗します。次の表は、MAXWSCLIENTS パラメータの説明です。

パラメータ

説明

MAXWSCLIENTS

マシンに接続する WSC の最大数を指定します。

構文は MAXWSCLIENTS=number です。デフォルト値は 0 です。

MAXWSCLIENTS を指定しないと、WSC は指定されたマシンに接続できません。


 

 


ワークステーション・リスナ (WSL) をサーバとして定義する

ワークステーション・クライアントがアプリケーションにアクセスするときは、1 つの WSL プロセスと 1 つ以上の WSH プロセスのサービスが介在します。WSL は、複数のワークステーション・クライアントをサポートできます。つまり、すべてのワークステーション・クライアントは、WSL のコマンド行で指定される同一のネットワーク・アドレスでアプリケーションと接続します。リスナは、1 つまたは複数のワークステーション・ハンドラ・プロセスをスケジューリングします。

WSH プロセスは、アプリケーションの管理ドメインで、リモート・ワークステーション上のクライアントの代理として機能します。WSH は多重化スキーマによって、複数のワークステーション・クライアントを同時にサポートします。

アプリケーションにワークステーション・クライアントを参加させるには、UBBCONFIG ファイルの SERVERS セクションにワークステーション・リスナ (WSL) のプロセスを指定する必要があります。サーバを指定する場合と同じ構文を使用してください。

WSL プロセスに情報を渡す

WSL プロセスに情報を渡すには、コマンド行オプション文字列 (CLOPT) を使用します。CLOPT パラメータの形式は、次のとおりです。

CLOPT="[ -A ] [servopts_options] -- -n netaddr [-d device]
[-w WSHname][-t timeout_factor][-T Client_timeout]
[-m minh][-M maxh][-x mpx_factor ]
[-p minwshport][-P maxwshport]
[-I init_timeout][-c compression_threshold]
[-k compression_threshold]
[-z bits][-Z bits][-H external_netaddr]
[-N network_timeout][-K{client|handler|both|none}]"

-A オプションを指定すると、WSL は起動時にすべてのサービスを提供します。デフォルトでは、このオプションが用意されていますが、ここでは、システム提供のサーバとアプリケーション・サーバの違いを強調するために示してあります。アプリケーション・サーバの起動時には、利用可能なサービスのサブセットだけが提供される場合もあります。

二重ダッシュ (--) は、起動後に WSL に渡されるパラメータ・リストの開始位置を示します。

CLOPT でのコマンド行オプションの使用

以下のコマンド行オプションは、CLOPT 文字列の二重ダッシュ (--) の後に指定することができます。

注記 CLOPT コマンド行オプションの総合一覧については、『BEA Tuxedo のファイル形式とデータ記述方法』の servopts(5) を参照してください。

コマンド行オプション

説明

-n netaddr

(必須)

WSC がリスナに接続するためのネットワーク・アドレス。WSC は、-n の後に指定されている値に対し、適切な環境変数 (WSNADDR) を設定する必要があります。

[-d device]

(一部のトランスポート・インターフェイスでは必須)

ネットワーク・デバイス名を指定します。

これは、一部のトランスポート・インターフェイスでのみ必要なオプション・パラメータです。たとえば、ソケットではこのパラメータは必要ありません。

[-t timeout]

クライアントが WSH に接続するまでの時間。

システムは timeout の値と SCANUNIT パラメータの値を乗算して、接続までの時間を算出します。

デフォルト値は、セキュリティなしのアプリケーションでは 3、セキュリティ付きアプリケーションでは 6 です。このコンテキストでは、次のいずれかのパラメータが設定されているアプリケーションは、セキュリティ付きであると見なされます。

[-w name]

このリスナに対して起動する WSH プロセスの名前。デフォルト値は WSH、つまり提供されているハンドラの名前です。buildwsh(1) コマンドで別のハンドラ・プロセスを作成した場合は、その名前をここで指定します。

[-m number]

起動し、常に利用可能にしておくハンドラの最小数。デフォルト値は 0 です。

[-M number]

起動できるハンドラの最大数。デフォルト値は、マシンの MAXWSCLIENTS を多重係数 (-x で指定) で割った値です。

[-x number]

WSH が同時に多重化できるクライアントの最大数。この値は 0 より大きくなければなりません。デフォルト値は 10 です。

[-T client_timeout]

クライアントが、接続を切断されないままアイドル状態でいられる時間 (分)。クライアントがこの時間内に要求を行わなかった場合、WSH はクライアント接続を切断します。この引数を指定しない場合、または 0 が指定されている場合、タイムアウトは発生しません。

[-p minwshport] and [-P maxwshport]

このリスナ・サーバに関連付けられている WSH が使用できるポート番号の範囲。0 〜 65535 の範囲のポート番号を指定してください。デフォルト値は、minwshport が 2048、maxwshport が 65535 です。

[-z] および [-Z]

WSL 側で、リンク・レベルの暗号化のために使用できるビットの範囲ビットの最小値を指定するには -z を使用し、最大値を指定するには -Z を指定します。

[-N network_timeout]

ワークステーション・クライアントが WSL/WSH からの応答を受け取るまでの最小待機時間 (秒)。デフォルト値は 0、つまりタイムアウトが発生しないことを示します。

[-K {client | handler | both | none}]

ワークステーション・ハンドラとワークステーション・クライアントの間で、指定された時間内にトラフィックが発生しなかった場合、これらの間で接続を確立するかどうかを指定します。


 

関連項目

 


ネットワーク障害の検出

Workstation コンポーネントには、ネットワーク接続が切断されてもハング状態が無期限に続かないようにするための、WSL 用の管理オプションが用意されています。これにより、次のことを実現できます。

 


keep-alive オプションの使用

keep-alive は、ワークステーション・ハンドラとワークステーション・クライアントの間で一定期間トラフィックが発生しなかった場合に、その接続の実行可能性を定期的にチェックするネットワーク機能です。

keep-alive オプションを要求するには、UBBCONFIG ファイルの SERVERS セクションで、WSL CLOPT エントリに -K オプションを追加します。-K オプションは、clienthandlerboth、または noneという引数をとります。

オプション

目的

-K client

クライアント・マシンから keep-alive メッセージを生成します。keep-alive メッセージが認識されない場合、クライアント・マシンはネットワークがダウンしていると見なします。以降の ATMI 呼び出しは、TPESYSTEMtperrno で異常終了します。

-K handler

ハンドラ・マシンから keep-alive メッセージを生成します。keep-alive メッセージが認識されない場合、ハンドラ・マシンはネットワークがダウンしているものとみなします。ハンドラは、応答しないクライアントに関連するエントリをクリーンアップします。この結果、ワークステーションが同時に多重化できるクライアント (-x で指定) を、ハンドラが消費しないようにすることができます。

-K both

クライアント・マシンとハンドラ・マシンの両方から、keep-alive メッセージを生成します。このコンポーネントの利用度とタイムアウトのしきい値は、オペレーティング・システムの調整可能なパラメータによって決まります。

-K none

keep-alive オプションをオフにします。この設定は、-K をまったく指定しない場合と同じ結果になります。


 

UBBCONFIG ファイル内のエントリは、次のようになります。

WSL SRVGRP="WSLGRP" SRVID=1000 RESTART=Y GRACE=0
CLOPT="-A -- -n //ws.beasys.com:5120 -d /dev/tcp -K both"

この例では、-K により、ワークステーション・クライアントとワークステーション・サーバの両方の keep-alive チェックが有効になります。

UBBCONFIGWSL エントリの詳細については、『BEA Tuxedo のファイル形式とデータ記述方法』の WSL(5) を参照してください。

注記 指定したタイムアウト値は、システム全体に適用されます。1 つのアプリケーションに対してタイムアウト値を指定し、その値を後で変更すると、keep-alive を使用するすべてのアプリケーションに影響します。

keep-alive オプションの制約

keep-alive オプションは、ソケットを使用する BEA Tuxedo システムを搭載したプラットフォームでのみサポートされます。

このオプションは、上記以外のプラットフォームでは使用できません。BEA Tuxedo システムでは、どのサーバ・マシンにも -K オプションを指定できますが、上記以外のプラットフォームでは正しく実行されません。上記以外のプラットフォームで keep-alive 機能を実行すると失敗し、ユーザ・ログにメッセージが書き込まれます (WSH のプロセスごとに 1 回)。処理は、通常どおり続行します。

注記 keep-alive 機能は、TCP/IP 通信でのみ有効です。

 


ネットワーク・タイムアウト・オプションの使用

ネットワーク・タイムアウトとは、ワークステーション・クライアントによる操作を待機する時間を指定するオプションです。ここで指定した時間を経過すると、操作に対する要求は、ネットワーク上でキャンセル (タイムアウト) されます。

ネットワーク・タイムアウトは、WSL の管理オプションである -N を使用して要求できます。-N オプションは、ネットワーク・タイムアウトを使用して、ワークステーション・クライアントのデータを受信します。

ネットワーク・タイムアウトのしくみ

ネットワーク・タイムアウト・オプションにより、ワークステーション・クライアントがネットワークからデータを受信するための BEA Tuxedo 操作を待機する期間 (秒単位) が指定されます。この期間を過ぎると、操作は失敗し、クライアントはアプリケーションから切断されます。値 0 (デフォルト) はタイムアウトが発生しないことを示します。

注記 この値を低く設定しすぎると、接続が頻繁に切断されます。

タイムアウトが発生すると、各 ATMI 関数はエラーを返します。リンクでタイムアウトが発生すると、アプリケーションに通知されます。この場合、既存のエラー・コードが使用されます。特定のエラー・コードの詳細については、tperrordetail(3c) を呼び出して参照してください。ネットワーク・タイムアウトが発生すると、未処理の操作は信頼できない状態になります。つまり、トランザクションが途中で終了したり、応答が失われたりします。アプリケーションへの接続を安全に終了するには、WSH と通信せずに、tpterm(3c) の呼び出しと同じ操作を行います。

操作が返される時点では、クライアントは BEA Tuxedo アプリケーションの一部ではなくなっています。クライアントを再度アプリケーションに参加させるには、次のどちらかの方法を使用します。

ネットワーク・タイムアウト・オプションの制限

ネットワーク・タイムアウト・オプションの設定

BEA Tuxedo アプリケーションにネットワーク・タイムアウト・オプションを指定するには、WSL CLOPT の引数に -N オプションを追加します。

 


ワークステーション・クライアントをサポートするコンフィギュレーション・ファイルの例

以下のサンプル・コンフィギュレーション・ファイルからの抜粋は、bankapp アプリケーションにワークステーション・コンポーネントを追加する方法を示しています。ここでは、MACHINES セクションと SERVERS セクションが変更されています。

コード リスト11-1 ワークステーション・クライアントをサポートする UBBCONFIG ファイルの例

*MACHINES
SITE1
...
MAXWSCLIENTS=150
              ...
SITE2
              ...
MAXWSCLIENTS=0
...
*SERVERS
...
WSL SRVGRP=”BANKB1" SRVID=500 RESTART=Y
CLOPT=”-A -- -n //ws.beasys.com:5120 -m 5 -M 30 -x 5"
                 ...

MACHINES セクションおよび SERVERS セクションの変更

MACHINES セクションおよび SERVERS セクションが次のように変更されています。

 

Back to Top Previous Next
Contact e-docsContact BEAwebmasterprivacy