apacheチューニング
- abコマンド
- abコマンドはベンチマークを簡単に取るために用意されたツールです。
ab -n 100 -c 10 http://xxx.xxx.xxx.xxx/index.html
-
-
- 詳しくはこちらApacheパフォーマンスチューニングのポイント
-
- プロセス関連
- Timeout【core】
- リクエスト待ち時間。秒単位で指定する。デフォルトは300秒。
- Timeout【core】
-
- MPM
- どのMPMが使われているかを調べる。
- MPM
-
- 参考
- 【】内は設定できるmpmについて記載しています。
-
- ThreadLimit【mpm_winnt,worker】
- Apache プロセス稼働中における ThreadsPerChild に設定可能な上限値。デフォルト値は mpm_winnt のときは 1920 で、 他の場合は 64
- ThreadLimit【mpm_winnt,worker】
-
- ThreadsPerChild【mpm_winnt,worker】
- Apacheが提供するWebページが同時に処理できるヒット数を指定する。mpm_winntでの ThreadsPerChild のデフォルト値は 64 で、他の場合は 25 。
- ThreadsPerChild【mpm_winnt,worker】
-
- MaxRequestsPerChild【mpm_winnt,prefork,worker】
- MaxRequestsPerChild ディレクティブは、 個々の子サーバプロセスが扱うことのできるリクエストの制限数を設定します。MaxRequestsPerChild 個のリクエストの後に、子プロセスは終了します。 MaxRequestsPerChild が 0 に設定されている場合は、プロセスは期限切れにより終了することはありません。
- mpm_netware と mpm_winnt でのデフォルト値は 0 です。
- KeepAlive リクエストの場合は、 一つ目のリクエストだけがこの制限に該当します。 実効的には、一つの子プロセスあたりのコネクション数を 制限するように挙動が変化します。
- MaxRequestsPerChild【mpm_winnt,prefork,worker】
マルチプロセスで動作させるApacheで、リクエストに
比例してプロセスを増大させてサーバのリソース食いつぶさないように上限を設ける
ためのもの、とかじゃないでしょうか。
あくまでプロセスの再生成は、ApacheやOSが落ちてしまってダウンタイムが長く
なってしまうための安全措置であって、これが起きたら設定の変更を検討する必要が
あるんじゃないかと思います。
MaxRequestsPerChild制限による子プロセスの再生成時のエラーについて
-
- ThreadsPerChildとMaxRequestPerChild
- こちらの説明が参考になります。
- ThreadsPerChildとMaxRequestPerChild
- KeepAlive関連
- KeepAlive[core]
- KeepAliveTimeout[core]
- 接続の持続を切断するまでの時間。デフォルトは15。20とすると、20秒間TCP接続が確保される。
- MaxKeepAliveRequests[core]
- 参考URL