CORBAワークユニットを使用するために必要な環境設定手順について説明します。
ここでは、コマンドをした設定手順について説明します。
作成したアプリケーションモジュールをクライアント環境およびサーバ環境に格納します。
作成したCORBAクライアントアプリケーションモジュールを、動作させるクライアント環境上の任意のディレクトリ上に格納します。
作成したCORBAサーバアプリケーションモジュールを、動作させるサーバ環境上の任意のディレクトリ上に格納します。
格納したディレクトリは後述のワークユニット定義で指定します。
インプリメンテーションリポジトリの登録は、CORBAサーバアプリケーションを動作させるサーバ上で行います。
なお、CORBAクライアントアプリケーションについては、本操作は不要です。
インプリメンテーションリポジトリの登録は、OD_impl_instコマンドにより行います。登録方法には、コマンドのパラメタにCORBAサーバアプリケーション情報指定して登録する方法と、CORBAサーバアプリケーション情報を記載した「CORBAアプリケーション情報定義ファイル」を作成して登録する方法の2種類あります。
ここでは「CORBAアプリケーション情報定義ファイル」を作成する登録方法について説明します。
なお、インプリメンテーションリポジトリを登録する、OD_impl_instコマンドの詳細については、「リファレンスマニュアル(コマンド編)」を参照してください。
CORBAアプリケーション情報定義ファイルの作成
以下に示す項目を記載した定義ファイルの作成を行います。
例
rep_id = IDL:test1:1.0 type = persistent proc_conc_max = 10 thr_conc_init = 5 thr_conc_maximum = 30 thr_decrease = ON mode = SYNC_END ior = 1.1 locale = SJISMS ssl = OFF
定義項目とその内容について、以下に示します。
定義項目名 | 設定内容 |
---|---|
rep_id | サーバアプリケーションのインプリメンテーションリポジトリIDを指定します。 |
type | ワークユニット上で動作させる場合、persistentを設定します。 |
proc_conc_max | サーバアプリケーションの最大プロセス多重度を設定します。 |
thr_conc_init | 1つのサーバアプリケーションプロセスで動作する、スレッドの初期多重度を指定します。 |
thr_conc_maximum | スレッド最大多重度を指定します。 |
thr_decrease | thr_conc_maximumにthr_conc_initと異なる値を指定してスレッドの自動拡張機能を使用する場合に、スレッドの縮退を行う場合は「ON」を指定します。 |
mode | ワークユニットの通常停止時のアプリケーションの動作モードを指定します。 |
ior | 連携するCORBAのバージョンを指定します。「1.1」を指定します。 |
locale | コード変換を行う場合設定します。 代表的なコード系は以下のとおりです(指定値:説明)。
|
SSL | サーバアプリケーションのオブジェクトリファレンス作成時、SSL情報付加のルールを指定します。 |
OD_impl_instコマンドによる登録
作成したCORBAアプリケーション情報定義ファイルをOD_impl_instコマンドに指定して、インプリメンテーションリポジトリの登録を行います。
例
CORBAアプリケーション情報定義ファイルが「implfile」の場合
OD_impl_inst -ax implfile
インプリメンテーションリポジトリへの登録情報の確認
インプリメンテーションリポジトリの登録内容を確認し、正しく登録されているか確認を行います。
例
インプリメンテーションリポジトリIDが「IDL:test1:1.0」の場合
OD_impl_inst -p -r IDL:test1:1.0
出力例
rep_id = IDL:test1:1.0 type = persistent proc_conc_max = 10 thr_conc_init = 5 thr_conc_maximum = 30 …
指定した値が正しく設定されているか確認してください。
設定値に誤りがある場合、「CORBAアプリケーション情報定義ファイルの作成」から再度実施してください。
作成したサーバアプリケーションを他のアプリケーションからオブジェクトとしてアクセスできるようにするために、そのオブジェクトを識別するためのオブジェクトリファレンスを作成します。同時に作成したオブジェクトリファレンスをネーミングサービスに登録します。
オブジェクトリファレンスの作成/登録
オブジェクトの作成/登録はOD_or_admコマンドにより行います。OD_or_admコマンドの詳細については、「リファレンスマニュアル(コマンド編)」を参照してください。
例
OD_or_adm -c IDL:test1:1.0 -L SJISMS -n IDL::test1
オブジェクトリファレンスの登録情報の確認
オブジェクトの登録内容を確認し、正しく登録されているか確認を行います。
例
odlistns -l
出力例
Name(Type) Object information(detail) Default object information(detail) … IDL::test1(o) IDL:test1:1.0, IDL:test1:1.0, (hostA:8002:1.1:SJISMS) …
設定した内容が正しく登録されているか確認してください。
またオブジェクトのホスト名等(上記出力例ではhostAの部分)についても、正しく設定されているか確認してください。
設定内容に誤りがあった場合は、再度「オブジェクトリファレンスの作成/登録」を行ってください。
CORBAアプリケーションをワークユニットで運用するためには、ワークユニット定義の登録が必要です。ワークユニット定義は、テキストファイルで作成し、コマンドでInterstage Application Serverに登録します。
ワークユニット定義の定義項目とその内容について、以下に示します。
ワークユニット定義の構文規約については、「付録A ワークユニット定義」を参照してください。
セクション名 | 定義項目名 | 必須項目 | 設定内容 |
---|---|---|---|
WORK UNIT | Name | ◎ | ワークユニット名を設定します。 |
Kind | ◎ | ワークユニット上でCORBAアプリケーションを動作させる場合に「CORBA」と設定します。 | |
Control Option | Path | ◎ | サーバアプリケーションの実行モジュールが格納されているフォルダのパスを設定します。 |
Current Directory | ◎ | アプリケーションカレントディレクトリを作成するためのパスを設定します。 | |
Path for Application | ○ | アプリケーションが動作時に使用するパス(環境変数「PATH」)を設定します。 | |
| ○ | アプリケーションが動作時に使用するライブラリパス(環境変数「LD_LIBRARY_PATH」)を設定します。 | |
Environment Variable | ○ | アプリケーションが動作時に使用する環境変数を設定します。 | |
| ○ | アプリケーションおよび各種出口プログラムにおいて、タイムアウト(最大処理時間オーバ)を検出した場合にプロセスのスタックトレースを出力するか否かを設定します。 | |
Startup Time | ○ | ワークユニットの起動が完了するまでの監視時間(秒)を指定します。 | |
Shutdown Time | ○ | ワークユニットの停止が完了するまでの監視時間(秒)を指定します。 | |
Start Log | ○ | CORBAワークユニットのプロセス起動時のログを採取します。 | |
Process Degeneracy | ○ | ワークユニット運用中に、プロセスの異常終了が発生した場合、自動再起動機能によりプロセスは再起動されます。この時、何らかの原因によりプロセスの再起動に失敗した場合、プロセス数が1つ少ない状態で運用を継続(縮退運用)するか否かを指定します。 | |
Application Retry Count | △ | 自動再起動不可となるまでのアプリケーションの連続異常終了回数を設定します。 | |
Maximum Processing Time for Exit Program | △ | 出口プログラムの最大処理時間の監視値を設定します。 | |
WorkUnit Exit Program | △ | ワークユニット起動時と終了時に、1回ずつ発行される出口プログラムの名前を設定します。 | |
Executable File of Exit Program for Salvage | △ | ワークユニット出口プログラム、プロセス回収出口プログラムの実行ファイル名を設定します。 | |
Request Assignment Mode | △ | クライアントからの要求メッセージを、要求待ちのサーバアプリケーションプロセスに振り分ける方式を指定します。 | |
Traffic Director Monitor Mode | △ | IPCOM連携時に、本ワークユニットをダウン監視対象とするか否かを設定します。 | |
Number of Revision Directories | △ | ワークユニットのカレントディレクトリの退避世代数を指定することができます。 | |
Application Program | Impl ID | ◎ | ワークユニットで起動するCORBAアプリケーションのインプリメンテーションリポジトリIDを指定します。 |
Executable File | ◎ | CORBAアプリケーションの実行モジュールを指定します。 | |
Param for Executable File | ○ | アプリケーション起動時に渡すパラメタを設定します。 | |
Concurrency | ○ | アプリケーションのプロセス多重度を設定します。 | |
Maximum Processing Time | ○ | アプリケーションの最大処理時間の監視値(秒)を設定します。 | |
Terminate Process for Time out | ○ | アプリケーションの最大処理時間超過時に、当該アプリケーションが動作しているプロセスを強制停止するかどうかを指定します。 | |
Environment Variable | ○ | アプリケーションが動作時に使用する環境変数を設定します。 | |
CLASSPATH for Application | ○ | アプリケーションが動作時に使用するクラスパスを設定します。 | |
Path | △ | 実行可能ファイルが格納されているフォルダのパスを設定します。 | |
Request Assignment Mode | △ | 要求メッセージ振り分け方式 | |
Maximum Queuing Message | △ | キューに滞留できる最大キュー数を設定します。 | |
Queuing Message To Notify Alarm | △ | アラーム通知を行う滞留キュー数を設定します。滞留キュー数が、この値になるとアラーム通知します。 | |
Queuing Message To Notify Resumption | △ | アラーム通知の監視を再開する滞留キュー数を設定します。滞留キュー数が監視キューイング数を超えた後、本設定値と同じになった時に、滞留キュー数の監視を再開します。 | |
Buffer Number | △ | キューのバッファ数を設定します。 | |
Buffer Size | △ | 1要求に対してキュー操作を行う1データ長を設定します。 | |
Maximum Processing Time for Exit Program | △ | 出口プログラムの最大処理時間の監視値(秒)を設定します。 | |
Exit Program for Process Salvage | △ | プロセス回収出口プログラム名を設定します。ただし、C言語のプログラム名しか指定できません。 | |
Executable File of Exit Program for Salvage | △ | プロセス回収出口プログラムの実行ファイル名を設定します。 |
◎:必須 ○:推奨 △:省略可
例
ワークユニット定義ファイルの記述例
# SAMPLE PROGRAM WU DEFINITION [WORK UNIT] Name:ODSAMPLE Kind:CORBA [Control Option] Path:C:\Interstage\JDK6\bin Current Directory:C:\tmp Path for Application:C:\DB\bin Environment Variable:OD_IMPLID=IDL:ODsample/anytest:1.0 Output of Stack Trace:Yes Startup Time:150 Shutdown Time:60 Start Log:Yes Process Degeneracy:Yes [Application Program] Impl ID:IDL:ODsample/anytest:1.0 Executable File:java.exe Concurrency:2 Param for Executable File:simple_s CLASSPATH for Application:C:\INTERSTAGE\ODWIN\src\sample\complex\samplelist.Java\data\any Maximum Processing Time:60 Terminate Process for Time out:No Environment Variable:APLENV=AAA
ワークユニット定義の登録
isaddwudefコマンドでワークユニット定義を登録します。
isaddwudef -o simple.wu