3.4.2 実行環境での設定
CTMの機能を使用する場合,CTMを使用する構成でシステムを構築する必要があります。CTMを使用するシステムの構成や構築手順については,マニュアル「アプリケーションサーバ システム設計ガイド」,およびマニュアル「アプリケーションサーバ システム構築・運用ガイド」を参照してください。
CTMの機能を使用して,リクエストをスケジューリングするための設定は,簡易構築定義ファイルでejbserver.ctmから始まるパラメタに,CTMデーモンのCTM識別子,CTMキューの長さなどを指定します。
CTMによるリクエストのスケジューリングをするためには,次の設定が必要です。
-
実行環境ディレクトリの作成と環境変数の設定
-
簡易構築定義ファイルでの設定
-
サーバ管理コマンドでの設定
(1) 実行環境ディレクトリの作成と環境変数の設定
Management Serverを使用しないでシステムを構築する場合,CTMを使用するためには,CTMとパフォーマンストレーサの実行環境ディレクトリを作成して,環境変数に指定する必要があります。
実行環境ディレクトリの作成および環境変数については,マニュアル「アプリケーションサーバ リファレンス コマンド編」の「付録H システムの環境変数」を参照してください。
なお,Management Serverを使用してシステムを構築する場合は,CTMを使用するために必要な環境変数の設定はありません。
- 注意事項
-
AIXの場合は,環境変数の設定には次の点に注意してください。
-
Component Transaction Monitorの実行環境では,環境変数PSALLOCに「early」を設定してください。設定しない場合にメモリ不足が発生すると,正しい動作が保証できません。
-
AIXの早期ページングスペース割り当てを指定する,環境変数PSALLOCに「early」を指定しています。早期ページングスペース割り当てでは,ページングスペース見積もり上の考慮事項があります。詳細は,AIXのマニュアルの「システム・マネージメント・コンセプト:オペレーティング・システムおよびデバイス」を参照してください。
-
Component Transaction Monitorの実行環境では,環境変数NODISCLAIMに「true」を設定してください。環境変数PSALLOCに「early」を設定した場合,環境変数NODISCLAIMに「true」を設定しないと,レスポンス,スループットおよびCPU利用率が極端に低下することがあります。
-
Component Transaction Monitorで使用するユーザデータ領域と共用メモリ領域を拡張するため,環境変数LDR_CNTRLに「MAXDATA=0x40000000」を設定してください。割り当てるメモリの値を1ギガバイトにしてください。
-
Component Transaction Monitorの実行環境では,環境変数EXTSHMに「ON」を設定してください。設定しない場合,共有メモリが参照できなくなることがあります。
-
(2) 簡易構築定義ファイルでの設定
CTMを使用してリクエストをスケジューリングする場合には,簡易構築定義ファイルで論理J2EEサーバ(j2ee-server)の<configuration>タグ内に,次のパラメタを設定してください。簡易構築定義ファイルについては,マニュアル「アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「4.3 簡易構築定義ファイル」を参照してください。
-
CTMを使用するJ2EEアプリケーションの開始時に,J2EEサーバがスケジュールキューを活性化するときの待ち時間を指定します。
-
ejbserver.ctm.DeactivateTimeOut
CTMを使用するJ2EEアプリケーションの停止時に,J2EEサーバがスケジュールキューを非活性化するときの待ち時間(実行中のリクエストの完了待ち時間)を指定します。
-
CTMを使用するJ2EEアプリケーションの開始時に,J2EEサーバによって生成されるCTMキューの長さを指定します。
-
ejbserver.client.ctm.RequestPriority
J2EEサーバからCTMに送信するリクエストの優先度を指定します。
(3) サーバ管理コマンドでの設定
サーバ管理コマンドで設定できる内容を次に示します。サーバ管理コマンドでの操作については,マニュアル「アプリケーションサーバ アプリケーション設定操作ガイド」の「3. サーバ管理コマンドの基本操作」を参照してください。
-
J2EEアプリケーション単位での設定
アプリケーション属性ファイルで次の設定ができます。
-
<managed-by-ctm>タグで,CTMを利用するかどうかを設定できます。
-
<scheduling>タグで,スケジューリングをするキューの名称や長さなどを設定できます。
-
<scheduling-unit>タグで,スケジュールキューの配置単位として,J2EEアプリケーション単位またはBean単位のどちらかを選択できます。
-
-
Stateless Session Bean単位での設定
SessionBean属性ファイルで次の設定ができます。
-
<enable-scheduling>タグで,J2EEアプリケーションに含まれるどのStateless Session Beanをスケジューリングの対象にするかを設定できます。
-
<stateless><pooled-instance>タグ下の<maximum>タグまたは<minimum>タグで,プールしておくインスタンス数の最大値または最小値を設定できます。なお,運用時にCTMの同時実行数を動的に変更する場合は,最大値は無制限「0」に設定する必要があります。
-
<scheduling>タグで,スケジューリングをするキューの名称や長さなどを設定できます。
-
cjgetapppropコマンドで属性ファイルを取得し,属性ファイル編集後に,cjsetapppropコマンドで編集内容をJ2EEアプリケーションに反映させてください。