目次 前 次 PDF


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

ワークステーション・クライアントの設定
このトピックには次の項が含まれます:
ワークステーション・クライアントの定義
ワークステーション・クライアントをOracle Tuxedoアプリケーションに参加させるには、対応するアプリケーション環境が必要です。Oracle Tuxedoシステムには、表15‑1に示すような、環境設定用の変数が用意されています。TUXDIRおよびWSNADDRは必須の変数であり、それ以外は省略可能な変数です。WSENVFILE以外のパラメータには、デフォルト値が用意されています。
 
APP_PW (オプション)
SEC_PRINCIPAL_NAME (オプション)
SEC_PRINCIPAL_NAMEで指定されたプリンシパルの復号化(プライベート)キーを収めるファイルまたはデバイスの場所を指定します。このパラメータには、最後のNULL文字を除いて最大1023文字まで指定できます。
SEC_PRINCIPAL_LOCATION (オプション)
SEC_PRINCIPAL_NAMEで指定されたプリンシパルのパスワードが格納される変数を指定します。このパラメータには、最後のNULL文字を除いて最大31文字まで指定できます。
SEC_PRINCIPAL_PASSWORD (オプション)
TMMAXENCRYPTBITS (オプション)
TMMINENCRYPTBITS (オプション)
WSRPLYMAX制限に達した場合に応答を格納するディレクトリ。デフォルトは作業ディレクトリです。
TMPDIR (オプション)
TPMBENCのデフォルト値はありません。MBSTRING型付きバッファを使用するワークステーション・クライアントの場合、ワークステーション・マシン上でTPMBENCを定義する必要があります。
TPMBENC (オプション)
ワークステーション・マシンが、受信したMBSTRINGバッファのデータを、TPMBENCで定義されたエンコードに自動的に変換するかどうかを指定します。デフォルトでは自動変換は無効になっています。つまり、受信したMBSTRINGバッファのデータは、そのまま(エンコーディングの変換なしに)ワークステーション・クライアントに配信されます。TPMBACONVY (yes)などの値に設定すると、自動変換が有効になります。
TPMBACONV (オプション)
このワークステーション上でのOracle Tuxedoシステム・ソフトウェアの場所。この環境変数を設定しないと、クライアントは接続できません。
TUXDIR (必須)
URLENTITYCACHING (オプション)
DTD、スキーマおよびエンティティ・ファイルをワークステーション・マシンがキャッシュするディレクトリを指定します。URLENTITYCACHEDIR変数には、キャッシュするファイルの絶対パス名を指定します。URLENTITYCACHEDIRを指定しない場合、デフォルトのディレクトリはURLEntityCachedirになります。このディレクトリはワークステーション・クライアント・プロセスの現在の作業ディレクトリ内に作成され、適切な書込み権が設定されています。
URLENTITYCACHEDIR (オプション)
WSDEVICE (オプション)
WSENVFILE (オプション)
ワークステーション・クライアントがワークステーション・リスナーまたはワークステーション・ハンドラに接続するために使用するネットワーク・アドレス。この変数は、WSFRANGEとともに、ワークステーション・クライアントがアウトバウンド接続を行う前にバインドしようとするTCP/IPポートの範囲を決定します。このアドレスは、TCP/IPアドレスでなければなりません。
WSFADDR (オプション)
WSFRANGE (オプション)
WSNADDR (必須)
WSRPLYMAX (オプション)
マシンのタイプ。WSTYPEの値が、WSLマシンの構成ファイルのTYPEの値と一致すると、エンコード/デコードは行われません。デフォルトは空文字列です。
WSTYPE (オプション)
ワークステーション・クライアントの最大数の設定
アプリケーションにワークステーション・クライアントを参加させるには、UBBCONFIGファイルのMACHINESセクションでMAXWSCLIENTSパラメータを指定する必要があります。
MAXWSCLIENTSは、Workstation機能専用の唯一のパラメータです。MAXWSCLIENTSに指定された値は、Oracle Tuxedoシステムの起動時に通知され、ワークステーション・クライアント用に確保するアクセサ・スロットの数が決まります。ネイティブ・クライアントの場合、各アクセサ・スロットに必要なセマフォは1つです。一方、ワークステーション・ハンドラ・プロセス(ワークステーション・クライアントのかわりにネイティブ・プラットフォーム上で実行するプロセス)は、ワークステーション・クライアントのアクセスを単一のアクセサ・スロットに多重化するので、必要なセマフォは1つだけです。この点も、Workstationコンポーネントの利点の1つです。多くのクライアントをネイティブ・プラットフォームからワークステーションに移動することによって、アプリケーションで使用するIPCリソースを減らすことができます。
MAXWSCLIENTSは、MAXACCESSERSに設定された合計のうち、指定された数のアクセサ・スロットを使用します。MAXWSCLIENTSの設定時には、ネイティブ・クライアントとサーバーを収容するために必要な数のスロットを残しておく必要があります。MAXWSCLIENTS値がMAXACCESSERS値を超えると、tpinit()の実行時にネイティブ・クライアントとサーバーが失敗します。次の表は、MAXWSCLIENTSパラメータの説明です。
 
構文は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でのコマンド行オプションの使用
表15‑2に示すコマンド行オプションは、CLOPT文字列の二重ダッシュ(--)の後に指定できます。
注意:
CLOPTコマンド行オプションの完全なリストは、『ファイル形式、データ記述、MIBおよびシステム・プロセス・リファレンス』servopts(5)に関する項を参照してください。
 
-n netaddr
[-d device]
[-t timeout]
システムは、このための合計時間を、timeoutの値とSCANUNITパラメータの値を乗算して算出します。
[-w name]
このリスナーに対して起動するWSHプロセスの名前。デフォルトはWSH、つまり提供されているハンドラの名前です。buildwsh(1)コマンドで別のハンドラ・プロセスを作成した場合は、その名前をここで指定します。
[-m number]
[-M number]
起動できるハンドラの最大数。デフォルトは、マシンのMAXWSCLIENTSを多重係数(-xで指定)で割った値です。
[-x number]
[-T client_timeout]
[-p minwshport]および[-P maxwshport]
[-z] and [-Z]
[-N network_timeout]
[-K {client | handler | both | none}]
関連項目
『ファイル形式、データ記述、MIBおよびシステム・プロセス・リファレンス』servopts(5)に関する項
ネットワーク障害の検出
Workstationコンポーネントには、ネットワーク接続が切断されてもハング状態が無期限に続かないようにするための、WSL用の2つの管理オプションが用意されています。これにより、次のことを実現できます。
WSHからのレスポンスをクライアントが待機する時間を制限できます。この時間を経過すると、WSHとの接続は切断されます(ネットワーク・タイムアウト・オプション)
keep-aliveオプションの使用
keep-aliveは、ワークステーション・ハンドラとワークステーション・クライアントの間で一定期間トラフィックが発生しなかった場合に、その接続の実行可能性を定期的にチェックするネットワーク機能です。
keep-aliveオプションをリクエストするには、UBBCONFIGファイルのSERVERSセクションで、WSL CLOPTエントリに-Kオプションを追加します。-Kオプションは、clienthandlerboth、またはnoneという引数を取ります。
表15‑3に、keep-aliveオプションを示します。
 
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エントリの詳細は、『ファイル形式、データ記述、MIBおよびシステム・プロセス・リファレンス』WSL(5)に関する項を参照してください。
注意:
ネットワーク・タイムアウト・オプションの使用
ネットワーク・タイムアウトとは、ワークステーション・クライアントによる操作を待機する時間を指定するオプションです。ここで指定した時間を経過すると、操作に対するリクエストは、ネットワーク上で取消し(タイムアウト)されます。
ネットワーク・タイムアウトは、WSLの管理オプションである-Nを使用してリクエストできます。-Nオプションは、ネットワーク・タイムアウトを使用して、ワークステーション・クライアントのデータを受信します。
ネットワーク・タイムアウトのしくみ
ネットワーク・タイムアウト・オプションにより、ワークステーション・クライアントがネットワークからデータを受信するためのOracle Tuxedo操作を待機する期間(秒単位)が指定されます。この期間を過ぎると、操作は失敗し、クライアントはアプリケーションから切断されます。0 (デフォルト)の値はタイムアウトが発生しないことを示します。
注意:
タイムアウトが発生すると、各ATMI関数はエラーを返します。リンクがタイムアウトすると、アプリケーションに通知されます。既存のエラー・コードが使用されます。(特定のエラーの詳細は、tperrordetail(3c)を呼び出して取得できます。)ネットワーク・タイムアウトが発生すると、未処理の操作は信頼できないステータスになります。つまり、トランザクションが途中で終了したり、応答が失われたりします。アプリケーションへの接続を安全に終了するには、WSHと通信せずに、tpterm(3c)の呼出しと同じ操作を行います。
操作が終了する時点では、クライアントはOracle Tuxedoアプリケーションの一部ではなくなっています。クライアントを再度アプリケーションに参加させるには、次のどちらかの方法を使用します。
tpinit(3c)を呼び出す
ネットワーク・タイムアウト・オプションの制限
ネットワーク・タイムアウト・オプションの設定
Oracle Tuxedoアプリケーションにネットワーク・タイムアウト・オプションを指定するには、WSL CLOPTの引数に-Nオプションを追加します。
ワークステーション・クライアントをサポートする構成ファイルの例
リスト15‑1のサンプル構成ファイルからの次の抜粋は、bankappアプリケーションにワークステーション・コンポーネントを追加する方法を示しています。ここでは、MACHINESセクションとSERVERSセクションが変更されています。
リスト15‑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セクションが次のように変更されています。
MACHINESセクションでは、MAXWSCLIENTSのデフォルト値が2つのサイトのエントリでオーバーライドされています。SITE1ではデフォルト値が150に引き上げられ、SITE2では0に引き下げられています。値0の場合は、ワークステーションが接続されません。
SERVERSセクションでは、WSLプロセスはグループBANKB1に指定されています。WSLのサーバーIDは500です。再起動可能と指定されています。
WSLはネットワーク・アドレス//ws.beasys.com:5120でリスニングします(-n)。
 

Copyright ©1994, 2017,Oracle and/or its affiliates. All rights reserved