web-dev-qa-db-ja.com

MaxSpareServersはApacheでどのように機能しますか?

Webを精査しましたが、ApacheMPMプリフォークにMaxSpareServerが何であるかがわかりません。

MaxSpareServersディレクティブは、アイドル状態の子サーバープロセスの必要な最大数を設定します。アイドルプロセスは、要求を処理していないプロセスです。アイドル状態のMaxSpareServerが複数ある場合、親プロセスは余分なプロセスを強制終了します。

すばらしいですが、スペアサーバーが作成される原因は何ですか?さらに重要なのは、予備のサーバーがいつなくなるのかということです。 minspareserversは、サーバーの起動後に徐々に作成されることを理解しています。

Maxspareserversはmaxclientsとどのように関連していますか?

基本的に、Apacheを最適に構成する方法について少し戸惑っています。そこにはたくさんのドキュメントがありますが、それはそれほど明確ではありません。

ありがとう、ジョン。

3
John Hunt

どういうわけかMinSpareServersよりもスペアサーバープロセスが少ない場合、Apacheは少なくともMinSpareServersになるまでスペアサーバープロセスを作成しようとします。

サーバーに負荷がかかっている場合、ApacheはMaxClientsまでのサーバープロセスをさらに作成します。それらが使用されている限り、それらは強制終了されませんが、負荷が低下すると、Apacheは最大でMaxSpareServerプロセスが残るまでプロセスの強制終了を開始します。

3

Apacheが生成する最大サーバーとしてmaxClientsを想定できます。

別の、maxSpareServersは、保持されるApache子プロセスの最大数を指示します。

MaxClientsディレクティブは、リクエストのスパイクを処理するためにApacheが子プロセスを生成する量を指定します。

したがって、リクエストの数が減少すると、ApacheはmaxSpareServersではなくminSpareServersに到達するまで子サーバーの強制終了を開始します。

新しい子プロセスの作成にはオーバーヘッドがあるため、サーバーが多くの要求を処理することが予想される場合は、maxSpareServersをかなり高く設定する必要があります。ただし、あまり高く設定しないでください。リクエストが少ない場合、サーバー上に多くのApacheプロセスがあり、メモリを占有する以外は何もしません。

基本的にはminSpareServersとmaxSpareServersの間に設定します。

0
slier