25.5.3. MPM 固有のサーバープールディレクティブ
MaxClients
MaxClients は、一度に実行できるサーバープロセスの合計数または同時接続クライアントに制限を設定します。このディレクティブの主な目的は、Apache HTTP Server がオペレーティングシステムをクラッシュさせないようにすることです。ビジーなサーバーの場合、この値は高い値に設定する必要があります。サーバーのデフォルトは、使用中の MPM に関係なく 150 に設定されます。ただし、prefork MPM を使用する際に MaxClients の値が 256 を超えることは推奨されません。
MaxRequestsPerChild
MaxRequestsPerChild は、子終了の前に各子サーバープロセスが提供する要求の合計数を設定します。MaxRequestsPerChild を設定する主な理由は、有効期限の長いプロセスがメモリーリークを引き起こすことを回避するためです。prefork MPM のデフォルトの MaxRequestsPerChild は 4000 で、worker MPM の場合は 0 です。
MinSpareServers および MaxSpareServers
これらの値は、prefork MPM でのみ使用されます。Apache HTTP Server は、受信要求の数に基づいて適切な数のスペアサーバープロセスを維持することで、認識された負荷に動的に適応する方法を調整します。サーバーは要求を待機しているサーバーの数を確認し、MaxSpareServers を超える場合に を強制終了するか、サーバーの数が MinSpareServers 未満の場合は を作成します。
MinSpareThreads および MaxSpareThreads
これらの値は worker MPM でのみ使用されます。これらは、受信要求の数に基づいて適切な数のスペアサーバースレッドを維持することで、Apache HTTP Server が認識された負荷に動的に適応する方法を調整します。サーバーはリクエストを待機しているサーバースレッドの数を確認し、MaxSpareThreads を超える場合は一部を強制終了するか、サーバーの数が MinSpareThreads 未満の場合は作成します。