![]() |
![]() |
![]() |
![]() |
![]() |
ワークステーション・クライアントをOracle Tuxedoアプリケーションに参加させるには、対応するアプリケーション環境が必要です。Oracle Tuxedoシステムには、表15‑1に示すような、環境設定用の変数が用意されています。TUXDIRおよびWSNADDRは必須の変数であり、それ以外は省略可能な変数です。WSENVFILE以外のパラメータには、デフォルト値が用意されています。
表15‑1 ワークステーション・クライアントの定義 APP_PW (オプション) SEC_PRINCIPAL_NAME (オプション) SEC_PRINCIPAL_LOCATION (オプション) SEC_PRINCIPAL_PASSWORD (オプション) TMMAXENCRYPTBITS (オプション) TMMINENCRYPTBITS (オプション) TMPDIR (オプション) TPMBENCのデフォルト値はありません。MBSTRING型付きバッファを使用するワークステーション・クライアントの場合、ワークステーション・マシン上でTPMBENCを定義する必要があります。 TPMBENC (オプション) ワークステーション・マシンが、受信したMBSTRINGバッファのデータを、TPMBENCで定義されたエンコードに自動的に変換するかどうかを指定します。デフォルトでは自動変換は無効になっています。つまり、受信したMBSTRINGバッファのデータは、そのまま(エンコーディングの変換なしに)ワークステーション・クライアントに配信されます。TPMBACONVをY (yes)などの値に設定すると、自動変換が有効になります。 TPMBACONV (オプション) このワークステーション上でのOracle Tuxedoシステム・ソフトウェアの場所。この環境変数を設定しないと、クライアントは接続できません。 TUXDIR (必須) Document Type Definition (DTD)、XMLスキーマおよびエンティティ・ファイルをワークステーション・マシンでキャッシュするかどうかを指定します。デフォルトでは、キャッシングは有効になっています(Y)。URLENTITYCACHINGをN (no)に設定すると、キャッシングは無効になります。 URLENTITYCACHING (オプション) DTD、スキーマおよびエンティティ・ファイルをワークステーション・マシンがキャッシュするディレクトリを指定します。URLENTITYCACHEDIR変数には、キャッシュするファイルの絶対パス名を指定します。URLENTITYCACHEDIRを指定しない場合、デフォルトのディレクトリはURLEntityCachedirになります。このディレクトリはワークステーション・クライアント・プロセスの現在の作業ディレクトリ内に作成され、適切な書込み権が設定されています。 URLENTITYCACHEDIR (オプション) WSDEVICE (オプション) WSENVFILE (オプション) ワークステーション・クライアントがワークステーション・リスナーまたはワークステーション・ハンドラに接続するために使用するネットワーク・アドレス。この変数は、WSFRANGEとともに、ワークステーション・クライアントがアウトバウンド接続を行う前にバインドしようとするTCP/IPポートの範囲を決定します。このアドレスは、TCP/IPアドレスでなければなりません。 WSFADDR (オプション) ワークステーション・クライアントのプロセスが、アウトバウンド接続を確立する前にバインドするTCP/IPポートの範囲。範囲のベースとなるアドレスは、WSFADDRパラメータで指定します。 WSFRANGE (オプション) WSNADDR (必須) WSRPLYMAX (オプション) WSTYPE (オプション)MAXWSCLIENTSは、Workstation機能専用の唯一のパラメータです。MAXWSCLIENTSに指定された値は、Oracle Tuxedoシステムの起動時に通知され、ワークステーション・クライアント用に確保するアクセサ・スロットの数が決まります。ネイティブ・クライアントの場合、各アクセサ・スロットに必要なセマフォは1つです。一方、ワークステーション・ハンドラ・プロセス(ワークステーション・クライアントのかわりにネイティブ・プラットフォーム上で実行するプロセス)は、ワークステーション・クライアントのアクセスを単一のアクセサ・スロットに多重化するので、必要なセマフォは1つだけです。この点も、Workstationコンポーネントの利点の1つです。多くのクライアントをネイティブ・プラットフォームからワークステーションに移動することによって、アプリケーションで使用するIPCリソースを減らすことができます。MAXWSCLIENTSは、MAXACCESSERSに設定された合計のうち、指定された数のアクセサ・スロットを使用します。MAXWSCLIENTSの設定時には、ネイティブ・クライアントとサーバーを収容するために必要な数のスロットを残しておく必要があります。MAXWSCLIENTS値がMAXACCESSERS値を超えると、tpinit()の実行時にネイティブ・クライアントとサーバーが失敗します。次の表は、MAXWSCLIENTSパラメータの説明です。
アプリケーションにワークステーション・クライアントを参加させるには、UBBCONFIGファイルのSERVERSセクションにワークステーション・リスナー(WSL)のプロセスを指定する必要があります。サーバーを指定する場合と同じ構文を使用してください。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に渡されるパラメータ・リストの開始位置を示します。
注意:
表15‑2 CLOPTでのコマンド行オプション・セットの使用 -n netaddr WSCがリスナーに接続するために使用するネットワーク・アドレス。WSCは、-nの後に指定されている値に対し、適切な環境変数(WSNADDR)を設定する必要があります。 システムは、このための合計時間を、timeoutの値とSCANUNITパラメータの値を乗算して算出します。
•
• このリスナーに対して起動するWSHプロセスの名前。デフォルトはWSH、つまり提供されているハンドラの名前です。buildwsh(1)コマンドで別のハンドラ・プロセスを作成した場合は、その名前をここで指定します。 このリスナー・サーバーに関連付けられているWSHが使用できるポート番号の範囲。ポート番号は0 - 65535の範囲である必要があります。デフォルトは、minwshportが2048、maxwshportが65535です。
• 『ファイル形式、データ記述、MIBおよびシステム・プロセス・リファレンス』のservopts(5)に関する項Workstationコンポーネントには、ネットワーク接続が切断されてもハング状態が無期限に続かないようにするための、WSL用の2つの管理オプションが用意されています。これにより、次のことを実現できます。
• keep-aliveは、ワークステーション・ハンドラとワークステーション・クライアントの間で一定期間トラフィックが発生しなかった場合に、その接続の実行可能性を定期的にチェックするネットワーク機能です。keep-aliveオプションをリクエストするには、UBBCONFIGファイルのSERVERSセクションで、WSL CLOPTエントリに-Kオプションを追加します。-Kオプションは、client、handler、both、またはnoneという引数を取ります。表15‑3に、keep-aliveオプションを示します。
表15‑3 Keep-aliveオプションの使用 クライアント・マシンからkeep-aliveメッセージを生成します。keep-aliveメッセージが認識されない場合、クライアント・マシンはネットワークがダウンしているとみなします。以降のATMI呼出しは、TPESYSTEMのtperrnoで異常終了します。 keep-aliveオプションをオフにします。この設定を使用した場合、-Kをまったく指定しない場合と同じ結果になります。この例では、-Kにより、ワークステーション・クライアントとワークステーション・サーバーの両方のkeep-aliveチェックが有効になります。ネットワーク・タイムアウトは、WSLの管理オプションである-Nを使用してリクエストできます。-Nオプションは、ネットワーク・タイムアウトを使用して、ワークステーション・クライアントのデータを受信します。タイムアウトが発生すると、各ATMI関数はエラーを返します。リンクがタイムアウトすると、アプリケーションに通知されます。既存のエラー・コードが使用されます。(特定のエラーの詳細は、tperrordetail(3c)を呼び出して取得できます。)ネットワーク・タイムアウトが発生すると、未処理の操作は信頼できないステータスになります。つまり、トランザクションが途中で終了したり、応答が失われたりします。アプリケーションへの接続を安全に終了するには、WSHと通信せずに、tpterm(3c)の呼出しと同じ操作を行います。リスト15‑1のサンプル構成ファイルからの次の抜粋は、bankappアプリケーションにワークステーション・コンポーネントを追加する方法を示しています。ここでは、MACHINESセクションとSERVERSセクションが変更されています。
•
•
•
• 最低5つのWSHが起動します(-m)。
• 最大30のWSHが起動します(-M)。