Zeitweise haben auf einem unserer Server einige Prozesse sehr lange Laufzeiten, die auch durch den konfigurierten Timeout nicht beendet werden. Aufgefallen ist mir das durch das Auswerten des /server- status. Die Prozesse verbleiben im Operation-mode 'W' (Sending reply) bis zum nächsten Restart des Servers. Die Zeile auf der server-status Seite sieht dann so aus (Client, VHost und Request habe ich weggelassen):

Srv     PID     Acc             M       CPU     SS      Req     Conn    Child   
Slot
6-1     9798    0/0/44780       W       7.77    170568  0       0.0     0.00    
1550.65

Es fällt auf, dass der Prozess seit 170568 Sekunden (Spalte SS) laeuft und damit wohl kein Ende findet. Interessant ist noch, dass es immer die gleiche Seite (PHP) betroffen ist, aber dort kein Fehler zu finden ist (nichts im PHP-Error-Log). Ausserdem beschraenken sich die Prozesse meist auf einen (maximal zwei) Client(s). Die Site hat recht viel Traffic, jedoch die Anzahl der unbeendeten Prozesse ist gering (ca. 5 bis 8 pro Woche).

Die Frage ist, warum werden die Prozesse nicht durch den konfigurierten Timeout beendet? Welche Moeglichkeiten habe ich um herauszufinden warum die Prozesse nie beendet werden? Ist das Verhalten vielleicht normal?

Folgender Apache kommt zum Einsatz:

Server Version: Apache/2.0.54 (Debian GNU/Linux) mod_ssl/2.0.54 OpenSSL/0.9.7e mod_perl/2.0.2 Perl/v5.8.4
Server Built: Jul 28 2006 09:04:55
API Version: 20020903:9

Die Prefork-Konfiguration:

StartServers           5
MinSpareServers        5
MaxSpareServers       10
MaxClients           150
ServerLimit          150
MaxRequestsPerChild  100

Ausserdem:
Timeout 60
KeepAlive On
MaxKeepAliveRequests 100
KeepAliveTimeout 5

Danke für jeden Tipp!

Viele Gruesse,
Richard Weiss
--------------------------------------------------------------------------
               Apache HTTP Server Mailing List "users-de"
     unsubscribe-Anfragen an [EMAIL PROTECTED]
          sonstige Anfragen an [EMAIL PROTECTED]
--------------------------------------------------------------------------

Antwort per Email an