Interstage Application Server OLTPサーバ運用ガイド
目次 索引 前ページ次ページ

第2章 OLTPサーバの設計> 2.2 各種ワークユニット

2.2.1 CORBAワークユニット

 ワークユニット運用において、対象となるアプリケーションにCORBAアプリケーション(サーバアプリケーション)を適用することができます。CORBAアプリケーションを適用したワークユニットをCORBAワークユニットと呼びます。

 Interstage管理コンソールもしくはワークユニット管理コマンドを使用して定義することができます。
 CORBAワークユニットはInterstage管理コンソールを使用して運用することを推奨します。

CORBAワークユニットのアプリケーション実行単位

 CORBAワークユニットでは、インプリメンテーションリポジトリに登録されたCORBAアプリケーションを実行単位としています。ワークユニット定義には、CORBAアプリケーションを識別するものとして、インプリメンテーションリポジトリIDを登録します。運用単位を同一にする(同時に起動・停止を行う)CORBAアプリケーションの場合には、1つのワークユニットに複数のインプリメンテーションリポジトリIDを指定することができます。

対象となるCORBAアプリケーション

 CORBAワークユニットで運用可能なCORBAアプリケーションは、サーバタイプが"persistent"のもののみです。(OD_impl_instのtype=persistent指定のみ)

CORBAアプリケーションの動作モードについて

 CORBAワークユニットで動作モードとして"SYNC_END"を使用する場合、ワークユニット停止時にCORBA_BOA_impl_is_readyから復帰した場合、必ずプロセスを終了する必要があります。ワークユニットの通常停止および同期停止を行った場合、"SYNC_END"であった場合、CORBA_BOA_impl_is_readyから復帰しますが、プロセスを終了するまではワークユニットの停止は待ち状態となります。そのため、必ずCORBA_BOA_impl_is_readyから復帰した場合はプロセスを終了する必要があります。

CORBAワークユニットの運用機能

 CORBAワークユニット運用における主な機能について説明します。

アプリケーションのプロセス多重度

 複数のクライアントから、1つのサーバアプリケーションへ同時に要求が出される場合、同時に処理できるサーバアプリケーションのプロセス多重度を設定することができます。プロセス多重度は、ワークユニット定義で指定します。
 プロセス多重度については、1処理あたりの処理時間とクライアントへのレスポンス時間および時間あたりの要求数により、決定する必要があります。
 また、プロセス多重度は必要以上に大きくすると、メモリなどシステム資源に影響がありますので妥当な多重度に設定する必要があります。


 ワークユニット管理コマンドを使用してCORBAアプリケーションを定義する場合は、ワークユニット定義のほかに、インプリメンテーションリポジトリ定義でも多重度の設定を行う必要があります。
 なお、ワークユニット定義のプロセス多重度は、インプリメンテーションリポジトリ定義のプロセス最大多重度より小さい値を設定する必要があります。

Interstage管理コンソールでの設定
 Interstage管理コンソールを使用してCORBAアプリケーションを定義する場合は、アプリケーションの配備画面における“プロセス多重度”に設定してください。Interstage管理コンソールを使用するとインプリメンテーションリポジトリ定義の設定をする必要はありません。

アプリケーション自動再起動

 クライアントからの入力データの誤りなどにより、アプリケーションが異常終了した場合に、アプリケーションを自動的に再起動させることができます。自動再起動を設定すると、アプリケーションが停止中に受け付けられたクライアントからの要求についても、再起動されたアプリケーションが引き続き処理することができます。
 アプリケーション自動再起動は、ワークユニット定義に設定します。設定する値は、ワークユニット異常終了となるまでの連続異常終了回数です。
 連続異常終了回数とは、アプリケーションの障害などにより、該当アプリケーションが1度も正常に処理されず、異常終了と再起動が繰り返される回数です。連続して異常終了した回数に達した場合、ワークユニットは異常終了します。ワークユニットが異常終了した場合、ワークユニット内のアプリケーションのプロセスは全て停止され、該当ワークユニットでの処理中の要求はクライアントへエラーで復帰します。

Interstage管理コンソールでの設定
 Interstage管理コンソールを使用してCORBAアプリケーションを定義する場合は、ワークユニット定義画面における“リトライカウント”に設定してください。設定内容は、連続異常終了回数を設定します。

タイマ監視機能

 ワークユニット運用では、CORBAアプリケーションの呼出しから復帰までの応答時間を監視できます。アプリケーションのハングアップや処理遅延を監視し、クライアントへのレスポンス遅延を防ぐことができます。監視時間はワークユニット定義(Maximum Processing Time:アプリケーション最大処理時間)で指定します。

 また、タイムアウト発生時の処理として、アプリケーション強制停止の有無をワークユニット定義(Terminate Process for Time out:最大処理時間超過時の強制停止の有無)で指定できます。

 ワークユニットでタイマ監視時間を設定した場合には、CORBAサービスのconfigファイルの設定を考慮する必要があります。詳細については、“CORBAアプリケーションのタイマ監視”を参照してください。

キュー制御

 複数のクライアントなどから特定のCORBAアプリケーションに対するリクエストが集中した場合に、すべてのリクエストの処理を起動してしまうとサーバが負荷過重状態となり、処理遅延・タイムアウトが多発する可能性があります。これを防ぐため、キュー制御機能で負荷を平準化させることができます。詳細については、“CORBAアプリケーションのキュー制御”を参照してください。


目次 索引 前ページ次ページ

All Rights Reserved, Copyright(C) 富士通株式会社 2006