httpd-users-de mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Christopher Gerharz" ...@cgerharz.de>
Subject RE: Gekillter Apache?
Date Sat, 08 May 2004 14:09:21 GMT
Hallo, Max!

Danke für deine Antwort!


Max Dittrich <mailto:Max.Dittrich@t-online.de> schrieb:
> Christopher Gerharz wrote:
>> Hallo, Liste!
>>
>> Ich habe auf meinem Server ein Problem: In letzter Zeit häufen sich
>> die abgestürzten Apache Prozesse (<defunct>).
>
> Mit sowas hatte ich bisher noch keine Erfahrungen, aber ich
> schick Dir
> trotzdem mal meine ersten Gedanken.
>
> Werden die Zombies nach und nach von Apache eingesammelt und
> verschwinden oder bleiben sie sehr lange bestehen?

Verschwinden sofort. Ich hab nur mit einer hohen Refresh-Zeit bei top
die Möglichkeit sie überhaupt zu sehen.
Auf der Status-Seite (/server-status) tauchen sie erst garnicht auf.

>
>> Ich habe mir eine Log mit PIDs erstellen lassen und mir die PIDs der
>> abgestürzten httpd-Prozesse notiert.
>>
>> ALLE hatten als Request ein Bild (GET).
>
> AFAIK ist das Logging die letzte Phase eines Requests. Also wenn ein
> Child in einer früheren Phase "abstürzt", dürftest Du keinen
> Hinweis auf
> den bearbeiteten Request im access_log finden.

Als ich MaxRequestsPerChild hatte, standen auch die abgestüzten Prozesse
drin (ich habe mir die PID mit reinschreiben lassen).
Wenn das Logging die letzte Phase ist, kann ich mir das nur durch eine
Sache erklären: Sie stürzen beim Loggen ab. Logdateien zu groß oder
sonst was...

>
>>
>> Ich setze Apache 1.3.29 auf Debian (Woody) ein.
>
> Verwendest Du besondere Compilereinstellungen oder Apachemodule, die
> nicht zur Standarddistribution gehören?

<schnipp>
debian:/usr/local/apache# bin/httpd -l
Compiled-in modules:
  http_core.c
  mod_env.c
  mod_log_config.c
  mod_mime.c
  mod_negotiation.c
  mod_status.c
  mod_info.c
  mod_include.c
  mod_autoindex.c
  mod_dir.c
  mod_cgi.c
  mod_asis.c
  mod_imap.c
  mod_actions.c
  mod_speling.c
  mod_userdir.c
  mod_alias.c
  mod_rewrite.c
  mod_access.c
  mod_auth.c
  mod_expires.c
  mod_so.c
  mod_setenvif.c
  mod_ssl.c
  mod_php4.c
suexec: enabled; valid wrapper /usr/local/apache/bin/suexec
<schnapp>


>> Killt der Apache die Childs vielleicht auf diese "unsaubere" Weise,
>> wenn sie ihre MaxRequests überschritten haben?
>
> Glaube ich nicht. Das wird sicher sehr gezielt ablaufen (graceful).
>
> Hast Du den Loglevel mal auf Debug erhöht und geschaut ob es da
> zusätzliche relevante Meldungen gibt? Vielleicht möchtest Du
> Apache als
> Einzelinstanz mit '-X' starten (evtl. auf einem anderen Port parallel)
> und ihn so lange besurfen bis er abstürzt. Wenn Du zeitgleich tcpdump
> mitlaufen lässt (-w) kannst Du noch weitere Informationen zum letzten
> Request erfahren.

Wäre eine Idee, möchte ich aber nicht unbedingt, da der Server für's
Webhosting eingesetzt wird.
Da sind ausfälle schlecht. Auf einem anderen Port wäre möglich, aber da
habe ich halt nicht so viele Requests, wie normal.

Loglevel werde ich gleich erhöhen.




Gruß,
Chris



--------------------------------------------------------------------------
                Apache HTTP Server Mailing List "users-de" 
      unsubscribe-Anfragen an users-de-unsubscribe@httpd.apache.org
           sonstige Anfragen an users-de-help@httpd.apache.org
--------------------------------------------------------------------------


Mime
View raw message