サーバアプリケーションのプロセス構成およびプロセス多重度について説明します。
複数のクライアントから、1つのアプリケーションに同時に要求が出された場合に、実行単位(プロセス)を複数にして、同時に処理できるプロセス多重度を設定することができます。
プロセス多重度については、1処理あたりの処理時間とクライアントへのレスポンス時間および時間あたりの要求数により決定してください。
なお、クライアントへのレスポンス時間等の情報は、性能監視機能を使用することで採取できます。性能監視機能についての詳細は、「運用ガイド(基本編)」の「性能監視」を参照してください。
また、必要以上にプロセス多重度を大きくすると、メモリなどシステム資源に影響があるため、妥当な多重度に設定を行う必要があります。
プロセス多重度は、ワークユニット定義で設定します。ワークユニット定義の登録は、コマンドを使用する方法と、Interstage管理コンソールを使用する方法があります。
コマンドを使用してCORBAワークユニットを定義する場合は、ワークユニット定義のほかに、インプリメンテーションリポジトリにも多重度の設定を行う必要があります。
ワークユニット定義では「Concurrency(プロセス多重度)」にプロセス多重度を設定します。
インプリメンテーションリポジトリではCORBAアプリケーション情報定義ファイルの「proc_conc_max」に設定します。「proc_conc_max」には、必ずワークユニット定義の「Concurrency」で指定した値と同じか、それより大きな値を設定してください。また、「サーバアプリケーションの動的プロセス数変更」機能を使用する場合は、変更時の最大の値を「proc_conc_max」に設定してください。
以下に定義登録の実行例を示します。なお、ワークユニット定義の詳細は「付録A ワークユニット定義」を参照してください。インプリメンテーションリポジトリの登録の詳細は、「リファレンスマニュアル」を参照してください。
例
ワークユニット定義の登録例
ワークユニット定義
[Application Program] Concurrency:10
isaddwudefコマンドでワークユニット名を指定して登録します。
isaddwudef -o ISSAMPLE1
インプリメンテーションリポジトリの設定例
CORBAアプリケーション情報定義ファイル
proc_conc_max=10
OD_impl_instコマンドで登録します。
OD_impl_inst -ax impl.def
以下の方法でプロセス多重度を設定してください。なお、Interstage管理コンソールを使用する場合は、インプリメンテーションリポジトリも自動的に設定されます。
Interstage管理コンソールにログインします。
Interstage管理コンソールの
[Interstage管理コンソール] > [Interstage Application Server] > [システム] > [ワークユニット] > [ワークユニット名]の[配備]タブ
または、
[Interstage管理コンソール] > [Interstage Application Server] > [システム] > [ワークユニット] > [ワークユニット名] > [インプリメンテーションリポジトリID名]の[環境設定]タブ
で[CORBAアプリケーション]の「プロセス多重度」に、アプリケーションのプロセス多重度を設定してください。
Interstage管理コンソールを使用する場合は、「Intestage管理コンソールのヘルプ」も参照してください。
ポイント
Interstage全体で起動できるワークユニット数、オブジェクト数およびプロセス数については、以下の条件式を満たす必要があります。
(ワークユニット数×2)+(オブジェクト総数×m)+(プロセス総数×n)+1 ≦ 2010
この条件式を超えてワークユニットを起動する場合は、大規模システム用環境定義ファイルをコピーする必要があります。大規模システム用環境定義ファイルについては、「チューニングガイド」の「ワークユニット数、オブジェクト数、プロセス数のチューニング」を参照してください。
大規模システム用環境定義ファイルを使用した場合、以下の条件式まで起動できるワークユニット数、オブジェクト数およびプロセス数が拡張されます。
(ワークユニット数×2)+(オブジェクト総数×m)+(プロセス総数×n)+1 ≦ 6030
条件式のオブジェクト総数とは、ワークユニット定義の[Application Program]セクションの総数です。
条件式のm、nについては、m=1、n=2を基準値とし、以下に該当する場合は、変更してください。
islistwuおよびislistobjコマンドを使用する場合
m=2
islistaplprocコマンドを使用する場合
n=3
Interstage管理コンソールを使用する場合
m=2、n=3
運用中のワークユニットを停止させることなく、またワークユニット定義を変更することなくサーバアプリケーションのプロセス多重度を変更することができます。
詳細は、「3.1.6.4 サーバアプリケーションの動的プロセス数変更」を参照してください。
本機能は、以下のワークユニットに対してのみ有効な機能です。
CORBAワークユニット
トランザクションアプリケーション