ソースから入れたapache2.2.0を使っているのですが、access_logに


::1 - - [19/Jul/2007:19:31:02 +0900] "GET / HTTP/1.0" 403 202 "-" "Apache/2.2.0 (internal dummy connection)"

というメッセージが定期的に出ています。(error_logには何も出ていない)
"internal dummy connection"がgracefulなどを実装するための仕組みというのはわかるのですが、(http://d.hatena.ne.jp/dayflower/20060727/1153993531)
大量に発生します。(特に高負荷のときに)
これによって、子プロセスが終了、生成を繰り返すので、サーバの負荷が高くなり困っています。(LoadAverageが特に)

MAXREQUESTSPERCHILDを0に設定してるので、基本的には子プロセスは生き続けると思うのですが、どなたか原因がおわかりの方はいますでしょうか?

apacheのmpmのconfは以下です。(上でmod_perl2が動いている)
<IfModule mpm_prefork_module>
StartServers 10
MinSpareServers 15
MaxSpareServers 20
MaxClients 40
MaxRequestsPerChild 0
</IfModule>

環境ですが、linux 2.6.17-1.2139_FC5, apache-2.2.0, mod_perl -2.0.3です。
不思議なことに開発環境(linux 2.4.21-32.0.1.ELsmp, apache-2.2.0, mod_perl-2.0.3)では起きていません。

回答の条件
  • URL必須
  • 1人2回まで
  • 登録:2007/07/19 19:48:41
  • 終了:2007/07/20 11:35:20

回答(1件)

id:kn1967 No.1

kn1967回答回数2915ベストアンサー獲得回数3012007/07/19 21:52:43

直接の解決策でも無いのでコメント欄に書きたかったのですが本回答で失礼いたします。


mpm_common - Apache HTTP ������

MAXREQUESTSPERCHILDの制限を外しても実際に使えるリソースには限界がありますので

Apacheに与えられたリソース残量の減少などによって強制的に締め出しを実施しないといけなくなり

その実現方法としてinternal dummy connectionが利用されているだけってことではないかと思われます。


いまさら失礼かもしれませんが、困ったときは一度基本に立ち戻るって事で

2台のマシンスペック及びhttpd.confの比較を行う事から再検証してみてはいかがでしょう。

  ↓ 基本って事で・・・

@IT:httpd.confによるWebサーバの最適化(2/3)

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません