パフォーマンスの調整

 [Performance Tuning]タブをクリックすると、子サーバープロセスの最大数やクライアント接続のApacheオプションを設定できます。通常の環境では、これらのオプションはデフォルト設定値で十分に動作します。これらの設定値を変更すると、Webサーバー全体のパフォーマンスに影響が及びます。

Figure 11-15. パフォーマンスの調整

 [Max Number of Connections]は、サーバーが処理する同時クライアント要求の最大数に設定します。接続ごとに、子httpdプロセスが作成されます。プロセスが最大数に達すると、それ以降、子サーバープロセスが開放されるまでは、誰もWebサーバーへ接続することはできません。Apacheを再コンパイルせずに、この値を256より大きい数値に設定することはできません。このオプションは、MaxClientsディレクティブに相当します。

 [Connection Timeout]は、サーバーが通信時に受信と送信を待機する時間を秒単位で定義します。特に、サーバーがGET要求を受け取るまで待機する時間、POSTまたはPUT要求時にTCPパケットを受信するまで待機する時間、TCPパケットに応答するACKを受け取るまで待機する時間を定義します。デフォルトでは、300秒に設定されています。通常の環境では、デフォルト値で十分に動作します。このオプションは、TimeOutディレクティブに相当します。

 [Max requests per connection]は、1つの固定接続が許容する要求の最大数に設定します。デフォルト値は、100です。通常の環境では、デフォルト値で十分に動作します。このオプションは、MaxRequestsPerChildディレクティブに相当します。

 [Allow unlimited requests per connection]オプションをチェックすると、MaxKeepAliveRequestsディレクティブは0に設定され、要求の許容数は無制限となります。

 [Allow Persistent Connections]オプションが未チェックの場合、KeepAliveディレクティブはfalseに設定されます。チェックすると、KeepAliveディレクティブはtrueに設定され、KeepAliveTimeoutディレクティブは[Timeout for next Connection]値で選択された数値に設定されます。このディレクティブは、サーバーが要求を処理した後、接続を切断する前に、次の要求を待機する時間を秒数で設定します。要求を受け取ると、代わりに[Connection Timeout]値が適用されます。

 [Persistent Connections]を大きな値に設定すると、サーバーへの接続を試みるユーザー数によっては、サーバーのパフォーマンスが低下することがあります。数値が大きいほど、最後のクライアントがサーバーへ接続した以降に、別の接続が開放されるまで待機するサーバープロセス数が多くなります。