Cosminexus システム構築ガイド

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

8.4.1 Webクライアントからの同時接続数の制御の設定

ここでは,Webクライアントからの同時接続数の制御について説明します。

<この項の構成>
(1) 概要
(2) 設定方法
(3) 設定例

(1) 概要

インプロセスHTTPサーバでは,Webクライアントからの最大接続数の設定とあわせて,接続を拒否するリクエスト数を設定することで,Webクライアントからの同時接続数を制御できます。Webクライアントからの最大接続数から接続を拒否するリクエスト数を引いた値が,Webクライアントからの接続を承諾する数となります。

Webクライアントからの接続数の増加やJ2EEアプリケーションなどの影響でJ2EEサーバの負荷が高くなった場合に,Webクライアントからのリクエストの受け付けを拒否して即座にエラーを返すことで,Webクライアントは即座にレスポンスを受信できます。これによって,J2EEサーバの負荷を一定に抑え,リクエストに対するレスポンスタイムを維持できます。

(2) 設定方法

Webクライアントからの同時接続数の制御は,簡易構築定義ファイルで設定します。論理J2EEサーバ(j2ee-server)の<configuration>タグ内に,次のパラメタを設定してください。

(3) 設定例

Webクライアントからの同時接続数の制御の設定例について説明します。

次に,リクエスト処理スレッド数の上限が40,接続を拒否するリクエスト処理スレッド数が1の場合の設定例を示します。

 
:
<param>
  <param-name>webserver.connector.inprocess_http.max_connections</param-name>
  <param-value>40</param-value>
</param>
<param>
  <param-name>webserver.connector.inprocess_http.rejection_threads</param-name>
  <param-value>1</param-value>
</param>
:
 

この設定例では,接続後に同時にリクエストを処理できるWebクライアントの数は39となります。リクエスト処理中のスレッド数が39に達すると,残りの1スレッドはWebクライアントに対してエラーを返し続けます。

Webクライアントからの同時接続数の制御によって,接続を拒否したリクエストに対しては,ステータスコード503(Service Unavailable)のエラーをWebクライアントに返します。このときクライアントに返すエラーページをカスタマイズすると,レスポンスメッセージのカスタマイズや,ほかのサーバへのリダイレクトができます。それぞれの場合の設定例を次に示します。なお,エラーページのカスタマイズについては,「8.6.2 エラーページのカスタマイズの設定」を参照してください。