Cosminexus 機能解説

[目次][用語][索引][前へ][次へ]

11.2.4 CTMレギュレータ

CTMレギュレータは,CTMデーモンに対するリクエストの集中による問題を,コネクションやリクエストのレギュレート(集約)によって解決するプロセスです。CTMデーモンのフロントに配置され,EJBクライアントからのコネクションやリクエスト(invokeまたはremove)の集中を,分散集約します。

例えば,大規模なシステムでクライアントの数が増え,リクエスト数が増大した場合,システムの動作状態が不安定になったり,システムで管理する資源が不足して正常な処理ができなくなったりします。これは,リクエストのスケジューリングをするCTMデーモンに対するリクエストの集中によって,コネクション数が増大し,ファイルやソケットのオープン数などのプロセス使用資源が増大するためです。

CTMレギュレータは,このようなリクエスト集中による問題を解決するための専用のプロセスです。CTMレギュレータは,クライアントからの幾つかのコネクションを集約し,CTMデーモン当たりのコネクション数の上限を管理します。これを,コネクションのレギュレートといいます。CTMレギュレータが大量のコネクションをレギュレートすることによって,使用資源を複数プロセスに分散し,大規模なシステムをより安定して動作させることができます。

コネクションのレギュレートの仕組みを,次の図に示します。

図11-6 コネクションのレギュレートの仕組み

[図データ]

CTMレギュレータは,EJBクライアントからのリクエストを受け付けると,対応するCTMデーモンにリクエスト転送して,リクエストの応答を待ちます。応答が返ってくると,その応答をEJBクライアントに返却します。

CTMでは,一つのCTMデーモンに対して,必要に応じて複数のCTMレギュレータを配置できます。一つのCTMレギュレータに対する同時リクエスト数が256を超えるような場合は,性能が劣化するおそれがあります。この場合は,クライアントプロセス数に関係なく,CTMレギュレータを増やしてください。なお,CTMレギュレータは,対応するCTMデーモンと同じホスト上に配置する必要があります。

また,ネーミングサービスをJ2EEサーバとは別なホストに配置している統合ネーミングスケジューラサーバモデルの場合,統合ネーミングスケジューラサーバでは,create以外のリクエストを受け付けません。このため,CTMレギュレータを起動する必要はありません。