- 締切済み
Apache(win32)での子プロセスについて
PHPとは関係ないかもしれませんが、 適切なカテゴリーがなかったため、こちらに投稿しました。 現在、 Windows Server 2003 + Apache2.058 + php5.21 という環境でWEBシステムを開発していますが、 アクセスが増えてくるとApacheプロセスの使用メモリーが増大して メモリリークが発生してしまいます。 そこで、MaxRequestsPerChild を設定しますと、 リクエスト数でプロセスを再生成しますのでメモリは安定しますが、 再生成時にアクセスがあった場合に、不安定な動きをします。 (Terminating 17 threads that failed to exit.というerrorログを出力してApacheが動かなくる) そこで、お聞きしたいことが2点あります。 (1)アクセスが増えると使用メモリーは増大するものなのでしょうか? (2)MaxRequestsPerChildを設定した場合、子プロセス再生成時にアクセスがあった場合は、不安定になるものでしょうか? ご回答、対応策をご存知でしたら 教えていただけないでしょうか。よろしくお願いします。
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- PED02744
- ベストアンサー率40% (157/390)
http://www.atmarkit.co.jp/flinux/rensai/apache2_03/apache03b.html これが参考になるでしょうか。 ということで、答えは (1)YES. クライアント数分のプロセスが動くので、クライアント数*1プロセスあたりのメモリ使用量が必要 (2)メモリリークを引き起こしているアプリがプロセス再起動によってさえ終了しなかったので、アボートしているようです。 メモリリークの原因を根本的に取り除く必要がありそうです。
お礼
どうもありがとうございました。 メモリリークの原因を探してみることにします。