Cosminexus V9 アプリケーションサーバ Cosminexus HTTP Server

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

4.1.2 HTTP Serverのプロセス構造(Windows版)

HTTP Serverのプロセス構造を次に示します。

図4-4 HTTP Serverのプロセス構造(Windows版)

[図データ]

HTTP Serverを起動すると,制御プロセスが起動します。制御プロセスは,サーバプロセスを起動しその稼働を監視します。サーバプロセスが起動すると同時にメインスレッドが起動します。メインスレッドは,リクエストを受信するアクセプトスレッドを一つと,リクエストを処理するサーバスレッドをThreadsPerChildディレクティブで指定した個数だけ起動します。

クライアントからのTCP接続は,Listenディレクティブで指定したIPアドレスとポートからOSが受信し,OS内のListenキューに保留します。ListenキューのサイズはListenBacklogディレクティブで指定できます。Listenキューに格納できなかったTCP接続は確立されません。アクセプトスレッドはListenキューからTCP接続を取り出し,HWSMaxQueueSizeディレクティブで指定した大きさのリクエストキューに登録します。それをサーバスレッドの一つが取り出してHTTPリクエストを受信し処理します。HWSMaxQueueSizeディレクティブ指定値を超えたためリクエストキューに格納できなかったTCP接続は,アクセプトスレッドによって閉じられます。

サーバスレッド数が増減することはありません。