apache2 wird immer langsamer

Apache, Lighttpd, nginx, Cherokee
rseffner
Posts: 8
Joined: 2009-06-05 17:51

apache2 wird immer langsamer

Post by rseffner » 2009-06-05 18:26

Hallo,

mein apache2 (Apache/2.2.9 (Debian) DAV/2 mod_python/3.3.1 Python/2.5.2 mod_ssl/2.2.9 OpenSSL/0.9.8g mod_perl/2.0.4 Perl/v5.10.0 Server at 127.0.0.1 Port 80) führt sein ein paar Tagen zum Nichtreagieren des Servers (debian lenny). Mein erster verdächtiger ist immer erstmal PHP, das läuft aber mittels suexec und fastcgi, so dass ich in der Prozessliste (top) sehen würde, wer da Ressourcen frisst. Ressourcen ist überhaupt ein gutes Stichwort, ich habe munin draufgepackt und selbst wenn der Server erst langsam und dann unerreichbar (ping geht aber noch ne Weile) wird, steigt weder load noch Speicherverbrauch, Anzahl der Prozesse oder der mysqld (die für suexec genutzten oser liegen im sql und sind mittels libnss ins System verlinkt) wird langsamer. Es muss der apache sein, bzw. eines der module.
Nun speichere ich mir aller Minute den server-status in ein file um ggf. etwas erkennen zu können. Bisher fällt dabei Folgendes auf:

- kurz nach apache2 restart, liefert der apache Seiten im Schnitt in 0,0x Sekunden aus (Spalte CPU)
- ca. eine Stunde nach diesem restart dauert das Mittel zur Auslieferung schon 2,8x Sekunden
= apache wird langsamer, aber in der load des Systemes ist das nicht zu bemerken

Nun hostet der Server reichlich 100 Domains, da wird es schwierig was zu finden aber zB. Folgendes taucht immer wieder auf (hier mal Auszüge, die je 10 Minuten auseinander liegen):

Code: Select all

ns3:/var/log/apache2/monitor# grep yanone 2009-06-05_17:36:01.apache2
0-2 30015 58/  _ 1.85 104  0    0.0  0.41  2.59 82.242.207.135  yanone.de            GET /typedesign/kaffeesatz/bohnen/06.gif HTTP/1.1
0-2 30015 68/  _ 1.90 77   4    0.0  0.57  0.89 83.233.30.104   yanone.de            POST /guestbook/machine.php HTTP/1.0
0-2 30015 53/  _ 1.85 104  0    0.0  0.34  0.94 82.242.207.135  yanone.de            GET /typedesign/kaffeesatz/pdf_icon.gif HTTP/1.1
0-2 30015 41/  _ 1.85 104  0    0.0  0.31  0.81 82.242.207.135  yanone.de            GET /typedesign/kaffeesatz/bohnen/05.gif HTTP/1.1
0-2 30015 46/  _ 1.98 7    0    0.0  0.37  0.43 84.191.106.75   yanone.de            HTTP/1.1
1-2 30016 92/  _ 1.61 104  0    0.0  0.81  1.38 82.242.207.135  yanone.de            GET /typedesign/kaffeesatz/bohnen/04.gif HTTP/1.1
1-2 30016 51/  _ 1.61 104  0    0.0  0.44  0.66 82.242.207.135  yanone.de            GET /typedesign/kaffeesatz/bohnen/07.gif HTTP/1.1
1-2 30016 32/  _ 1.62 111  7    0.0  0.65  1.22 65.55.106.148   yanone.de            HTTP/1.0
1-2 30016 68/  _ 1.63 85   4    0.0  0.41  0.94 83.233.30.104   yanone.de            POST /guestbook/machine.php HTTP/1.0
1-2 30016 76/  _ 1.61 104  0    0.0  0.18  7.95 82.242.207.135  yanone.de            GET /typedesign/kaffeesatz/bohnen/03.gif HTTP/1.1
2-0 -     0/0/ . 1.46 2940 0    0.0  0.00  0.60 85.178.125.125  yanone.de            GET /favicon.ico HTTP/1.1
2-0 -     0/0/ . 1.46 2940 0    0.0  0.00  7.63 85.178.125.125  yanone.de            GET /home/background/5-5.gif HTTP/1.1
2-0 -     0/0/ . 1.40 2940 0    0.0  0.00  0.11 213.3.5.102     yanone.de            GET /home/background/zeilen.gif HTTP/1.1
2-0 -     0/0/ . 1.40 2940 0    0.0  0.00  0.07 62.216.21.20    yanone.de            GET /schriftgestaltung/kaffeesatz/namen_gross.gif
2-0 -     0/0/ . 1.45 2940 27   0.0  0.00  0.34 65.55.106.119   yanone.de            GET /blog/?SID=124792&seite=1 HTTP/1.0
2-0 -     0/0/ . 1.47 2940 0    0.0  0.00  0.54 85.178.163.36   yanone.de            GET /favicon.ico HTTP/1.0
2-0 -     0/0/ . 1.46 2940 231  0.0  0.00  0.60 65.55.209.22    yanone.de            GET /shop/
2-0 -     0/0/ . 1.44 2940 10   0.0  0.00  0.22 213.3.5.102     yanone.de            GET /typedesign/rahmen_checkitout.gif HTTP/1.1
ns3:/var/log/apache2/monitor# grep yanone 2009-06-05_17:46:01.apache2
0-2 30015 63/  _ 2.09 254  210 0.0  0.42  2.60 173.52.146.177  yanone.de            GET /gui/page/page_oben.gif HTTP/1.1
0-2 30015 97/  _ 2.15 70   0   0.0  0.70  1.39 95.102.42.170   yanone.de            GET /typedesign/alabdali8/preview_05.gif HTTP/1.1
0-2 30015 64/  _ 2.13 114  0   0.0  0.32  1.51 190.49.201.128  yanone.de            HTTP/1.1
0-2 30015 48/  _ 2.09 254  0   0.0  0.31  0.82 173.52.146.177  yanone.de            GET /gui/page/page_links.gif HTTP/1.1
1-2 30016 56/  _ 1.81 163  0   0.0  0.75  1.30 190.49.201.128  yanone.de            HTTP/1.1
1-2 30016 125/ _ 1.82 70   0   0.0  4.14  5.72 95.102.42.170   yanone.de            GET /typedesign/alabdali8/thumb_05.jpg HTTP/1.1
1-2 30016 58/  _ 1.80 254  0   0.0  0.46  0.68 173.52.146.177  yanone.de            GET /gui/page/page_unten.gif HTTP/1.1
1-2 30016 74/  _ 1.81 152  0   0.0  0.54  1.11 72.14.199.124   yanone.de            GET /blog/logrdf.php HTTP/1.1
1-2 30016 57/  _ 1.82 26   0   0.0  0.51  1.39 85.178.163.36   yanone.de            GET /favicon.ico HTTP/1.0
2-0 -     0/0/ . 1.46 3541 0   0.0  0.00  0.60 85.178.125.125  yanone.de            GET /favicon.ico HTTP/1.1
2-0 -     0/0/ . 1.46 3541 0   0.0  0.00  7.63 85.178.125.125  yanone.de            GET /home/background/5-5.gif HTTP/1.1
2-0 -     0/0/ . 1.40 3541 0   0.0  0.00  0.11 213.3.5.102     yanone.de            GET /home/background/zeilen.gif HTTP/1.1
2-0 -     0/0/ . 1.40 3541 0   0.0  0.00  0.07 62.216.21.20    yanone.de            GET /schriftgestaltung/kaffeesatz/namen_gross.gif
2-0 -     0/0/ . 1.45 3541 27  0.0  0.00  0.34 65.55.106.119   yanone.de            GET /blog/?SID=124792&seite=1 HTTP/1.0
2-0 -     0/0/ . 1.47 3541 0   0.0  0.00  0.54 85.178.163.36   yanone.de            GET /favicon.ico HTTP/1.0
2-0 -     0/0/ . 1.46 3541 231 0.0  0.00  0.60 65.55.209.22    yanone.de            GET /shop/
2-0 -     0/0/ . 1.44 3541 10  0.0  0.00  0.22 213.3.5.102     yanone.de            GET /typedesign/rahmen_checkitout.gif HTTP/1.1
ns3:/var/log/apache2/monitor# grep yanone 2009-06-05_17:56:01.apache2
0-2 30015 69/  _ 2.32 9    38     0.0  0.45  2.63  207.12.246.133  yanone.de            GET /cgi-bin/download.pl?file=kaffeesatzfont HTTP/1.1
0-2 30015 137/ _ 2.25 291  0      0.0  1.02  1.54  85.200.165.146  yanone.de            GET /favicon.ico HTTP/1.0
0-2 30015 43/  _ 2.31 9    64     0.0  0.48  0.91  65.55.106.159   yanone.de            GET /jordanien/fotos/index.php?datei=033.jpg HTTP/1.1
0-2 30015 69/  _ 2.33 8    19     0.0  0.38  0.98  207.12.246.133  yanone.de            GET /gui/navi/logotypes/60s.gif HTTP/1.1
0-2 30015 55/  _ 2.30 16   170    0.0  0.33  0.83  207.12.246.133  yanone.de            GET /gui/page/page_oben.gif HTTP/1.1
0-2 30015 85/  _ 2.30 37   0      0.0  6.02  6.50  65.55.104.158   yanone.de            GET /robots.txt HTTP/1.1
0-2 30015 51/  _ 2.28 144  4      0.0  0.39  0.44  83.233.30.104   yanone.de            POST /guestbook/machine.php HTTP/1.0
1-2 30016 105/ _ 2.52 37   39     0.0  0.84  1.41  65.55.104.158   yanone.de            GET /cgi-bin/download.pl?file=kaffeesatzfont HTTP/1.1
1-2 30016 92/  _ 2.53 8    6      0.0  0.50  0.85  207.12.246.133  yanone.de            www.schnellmussesgehenu
1-2 30016 77/  _ 2.50 51   0      0.0  0.77  1.16  85.147.121.243  yanone.de            GET /favicon.ico HTTP/1.0
1-2 30016 127/ _ 2.47 144  4      0.0  4.16  5.74  83.233.30.104   yanone.de            POST /guestbook/machine.php HTTP/1.0
1-2 30016 65/  _ 2.53 8    0      0.0  0.50  0.71  207.12.246.133  yanone.de            GET /typedesign/download/amazonde.gif HTTP/1.1
1-2 30016 46/  _ 2.41 277  0      0.0  0.74  1.48  96.30.167.212   yanone.de            HTTP/1.1
1-2 30016 66/  _ 2.53 8    0      0.0  0.53  1.41  207.12.246.133  yanone.de            1.1
2-0 -     0/0/ . 1.46 4140 0      0.0  0.00  0.60  85.178.125.125  yanone.de            GET /favicon.ico HTTP/1.1
2-0 -     0/0/ . 1.46 4140 0      0.0  0.00  7.63  85.178.125.125  yanone.de            GET /home/background/5-5.gif HTTP/1.1
2-0 -     0/0/ . 1.40 4140 0      0.0  0.00  0.11  213.3.5.102     yanone.de            GET /home/background/zeilen.gif HTTP/1.1
2-0 -     0/0/ . 1.40 4140 0      0.0  0.00  0.07  62.216.21.20    yanone.de            GET /schriftgestaltung/kaffeesatz/namen_gross.gif
2-0 -     0/0/ . 1.45 4140 27     0.0  0.00  0.34  65.55.106.119   yanone.de            GET /blog/?SID=124792&seite=1 HTTP/1.0
2-0 -     0/0/ . 1.47 4140 0      0.0  0.00  0.54  85.178.163.36   yanone.de            GET /favicon.ico HTTP/1.0
2-0 -     0/0/ . 1.46 4140 231    0.0  0.00  0.60  65.55.209.22    yanone.de            GET /shop/
2-0 -     0/0/ . 1.44 4140 10     0.0  0.00  0.22  213.3.5.102     yanone.de            GET /typedesign/rahmen_checkitout.gif HTTP/1.1


Das sind doch immer wieder die selben Anfragen oder? Man sieht auch, dass die Zeit zum Ausliefern stetig steigt. Verwenden wir mal die PID 30015 und 30016, so erfahren wir, dass der apache neben diesen auch noch unter 30014 und 30013 läuft.

Code: Select all

ns3:/var/log/apache2/monitor# ps -ef | grep 3001
10011      580 30014  0 17:00 ?        00:00:00 /usr/bin/php-cgi -c /var/www/php-fcgi-scripts/plasticcon/schwarzes-hamburg.de/
10014     1067 30014  0 17:01 ?        00:00:00 /usr/bin/php-cgi -c /var/www/php-fcgi-scripts/direktform/direktform.de/
10043     1130 30014  0 17:02 ?        00:00:04 /usr/bin/php-cgi -c /var/www/php-fcgi-scripts/kreuzkirch/kreuzkirche-dresden.de/
10050     2074 30014  0 17:05 ?        00:00:00 /usr/bin/php-cgi -c /var/www/php-fcgi-scripts/wautomaten/wip-dresden.de/
10011     2329 30014  0 17:08 ?        00:00:07 /usr/bin/php-cgi -c /var/www/php-fcgi-scripts/plasticcon/brandfleck.de/
10033     3029 30014  0 17:10 ?        00:00:00 /usr/bin/php-cgi -c /var/www/php-fcgi-scripts/spdmeissen/spd-fraktion-meissen.de/
its       3263 30014  0 17:10 ?        00:00:00 /usr/bin/php-cgi -c /var/www/php-fcgi-scripts/its/i-t-sys.de/
10068     4490 30014  0 17:15 ?        00:00:00 /usr/bin/php-cgi -c /var/www/php-fcgi-scripts/hansebrand/j5media.de/
its       6318 30014  0 17:23 ?        00:00:00 /usr/bin/php-cgi -c /var/www/php-fcgi-scripts/its/seffner.de/
ptzdd    14049 30014  0 17:54 ?        00:00:00 /usr/bin/php-cgi -c /var/www/php-fcgi-scripts/ptzdd/ptz-prototypen.de/
root     19154 12551  0 18:14 pts/0    00:00:00 grep 3001
www-data 30013 10252  0 16:48 ?        00:00:00 /usr/sbin/apache2 -k start
www-data 30014 10252  0 16:48 ?        00:00:00 /usr/sbin/apache2 -k start
www-data 30015 10252  0 16:48 ?        00:00:02 /usr/sbin/apache2 -k start
www-data 30016 10252  0 16:48 ?        00:00:03 /usr/sbin/apache2 -k start
10008    30129 30014  0 16:48 ?        00:00:13 /usr/bin/php-cgi -c /var/www/php-fcgi-scripts/anglerverb/anglerverband-sachsen.de/
10007    30168 30014  0 16:49 ?        00:00:00 /usr/bin/php-cgi -c /var/www/php-fcgi-scripts/markenteam/markenteam-dresden.de/
yanone   30175 30014  0 16:49 ?        00:00:00 /usr/bin/php-cgi -c /var/www/php-fcgi-scripts/yanone/yanone.de/
10050    30392 30014  0 16:50 ?        00:00:00 /usr/bin/php-cgi -c /var/www/php-fcgi-scripts/wautomaten/wip-dresden.de/
10016    31623 30014  0 16:54 ?        00:00:00 /usr/bin/php-cgi -c /var/www/php-fcgi-scripts/kunsthande/dresden-kunstauktion.de/
its      32104 30014  0 16:55 ?        00:00:00 /usr/bin/php-cgi -c /var/www/php-fcgi-scripts/its/its-seffner.de/
martha   32483 30014  0 16:57 ?        00:00:00 /usr/bin/php-cgi -c /var/www/php-fcgi-scripts/martha/thp-liebeskind.de/


Warum scheint nur der Prozess 30014 sinnvoll zu arbeiten. Kann ich davon ausgehen, dass 30015 und 30016 irgendwie hängen geblieben sind? In den Ausgaben von server-status finden 30013 und 30014 nie Erwähnung.

Ich bin ratlos. In ein paar Stunden ist der Server dann nicht mehr bedienbar, geschweige denn, dass er Seiten ausliefert. Genauer gesagt merkt man erst die Verzögerung der Seitenauslieferungen und irgendwann (ca. nach einem Tag Laufzeit) kann man nichtmal mehr per ssh drauf, dann logt munin aber auch nichts mehr und die eigentlich minütlich geschriebenen server-status weisen große Lücken auf.

Ich bin für jede Hilfe dankbar, die mich auf die Spur führt.

Grüße

Ronny

Roger Wilco
Administrator
Administrator
Posts: 6001
Joined: 2004-05-23 12:53

Re: apache2 wird immer langsamer

Post by Roger Wilco » 2009-06-06 11:13


rseffner
Posts: 8
Joined: 2009-06-05 17:51

Re: apache2 wird immer langsamer

Post by rseffner » 2009-06-06 11:25

Was will er mir damit sagen? Wie ich sah, sind all die drei Foren nicht besonders stark frequentiert, mir ist die Lösung meines Problemes aber wichtig. Habe ich jetzt jemanden wegen x-post oder wie man das nennt angepi..t?

Ronny

Roger Wilco
Administrator
Administrator
Posts: 6001
Joined: 2004-05-23 12:53

Re: apache2 wird immer langsamer

Post by Roger Wilco » 2009-06-06 11:39

rseffner wrote:Wie ich sah, sind all die drei Foren nicht besonders stark frequentiert, mir ist die Lösung meines Problemes aber wichtig. Habe ich jetzt jemanden wegen x-post oder wie man das nennt angepi..t?

Siehe Multiposting - Was ist das und warum mag die keiner?.

rseffner
Posts: 8
Joined: 2009-06-05 17:51

Re: apache2 wird immer langsamer

Post by rseffner » 2009-06-06 12:01

Ok, Du hast also aus meinem Multiposting ein Crossposting gemacht - wobei es jetzt mir obliegt die Informationen zusammenzuführen und Rückmeldungen zu geben. Die Fakten warum das nicht der tolle Weg ist sind ja einleuchtend. Was ist aber mit Postern, die im Forum X zu Hause sind und durch Crossposting erfahren, im Forum Y lesen und antworten zu sollen. Nicht jeder hat Lust sich dutzende Accounts anzulegen. Aber lassen wir das, können wir bitte zurück zu meinem eigentlichen Problem, hast Du da noch eine Idee für mich? Mittlerweile leigen die einzelnen Zeitangaben pro Request bei über 11 Sekunden.

Ronny

Roger Wilco
Administrator
Administrator
Posts: 6001
Joined: 2004-05-23 12:53

Re: apache2 wird immer langsamer

Post by Roger Wilco » 2009-06-06 12:51

rseffner wrote:Was ist aber mit Postern, die im Forum X zu Hause sind und durch Crossposting erfahren, im Forum Y lesen und antworten zu sollen. Nicht jeder hat Lust sich dutzende Accounts anzulegen.

Du hast das Problem und die vorgeschlagene Lösung nicht verstanden. Wieso sollen in X Foren alle Benutzer immer wieder die gleichen Fragen stellen, die in einem anderen Forum schon beantwortet wurden? Das macht doppelte Arbeit und verschwendet die Zeit derer, die sich mit deinem Problem beschäftigen. Das World Wide Web lebt von Hyperlinks. Wieso sollte eine Verlinkung in andere Foren kontraproduktiv sein? Es erwartet ja niemand, dass sich die Benutzer auch in anderen Foren anmelden.

rseffner
Posts: 8
Joined: 2009-06-05 17:51

Re: apache2 wird immer langsamer

Post by rseffner » 2009-06-08 12:49

Hallo Matthias,

zuerst der Serverstatus ohne Verbindungsdetails :

Code: Select all

****** Apache Server Status for 127.0.0.1 ******
  Server Version: Apache/2.2.9 (Debian) DAV/2 mod_python/3.3.1 Python/2.5.2
  mod_ssl/2.2.9 OpenSSL/0.9.8g mod_perl/2.0.4 Perl/v5.10.0
  Server Built: Jan 20 2009 17:25:53
===============================================================================
  Current Time: Monday, 08-Jun-2009 12:41:01 CEST
  Restart Time: Monday, 08-Jun-2009 05:05:11 CEST
  Parent Server Generation: 0
  Server uptime: 7 hours 35 minutes 50 seconds
  Total accesses: 18839 - Total Traffic: 382.5 MB
  CPU Usage: u15.53 s7.26 cu0 cs0 - .0833% CPU load
  .689 requests/sec - 14.3 kB/second - 20.8 kB/request
  1 requests currently being processed, 74 idle workers

[...]

SSL/TLS Session Cache Status:
cache type: SHMCB, shared memory: 512000 bytes, current sessions: 0
sub-caches: 32, indexes per sub-cache: 133
index usage: 0%, cache usage: 0%
total sessions stored since starting: 23
total sessions expired since starting: 23
total (pre-expiry) sessions scrolled out of the cache: 0
total retrieves since starting: 17 hit, 1 miss
total removes since starting: 0 hit, 0 miss
===============================================================================
     Apache/2.2.9 (Debian) DAV/2 mod_python/3.3.1 Python/2.5.2 mod_ssl/
     2.2.9 OpenSSL/0.9.8g mod_perl/2.0.4 Perl/v5.10.0 Server at 127.0.0.1
     Port 80


und nun das "tuning", ich hoffe die richtigen Abschnitte gefunden zu haben :

Code: Select all

[...]

Timeout 300

[...]

KeepAlive On
MaxKeepAliveRequests 100
KeepAliveTimeout 15

[...]

<IfModule mpm_worker_module>
    StartServers          2
    MaxClients          150
    MinSpareThreads      25
    MaxSpareThreads      75
    ThreadsPerChild      25
    MaxRequestsPerChild   0
</IfModule>

[...]


Ich muss dazu sagen, dass an dem Server nichts Nachvollziehbares geändert wurde, sprich er lief lange Zeit stabil und zuverlässig. Was allerdings nicht ausschließt, dass ein Kunde in seinem Web was laufen hat, aber gerade wenn python oder ähnliches was am laufen hätten, sollte sich das doch in load auswirken oder?

Vielen Dank für Deinen themenbezogenen, konstruktiven Hilfsversuch (was nicht heißen soll, dass ich "roger wilcos" Eintrag mißachte).


Ronny

rseffner
Posts: 8
Joined: 2009-06-05 17:51

Re: apache2 wird immer langsamer

Post by rseffner » 2009-06-08 13:43

Der Status war zu einem Zeitpunkt als beim Ausliefern die mittlere CPU-Zeit bei 8 Sekunden lag. Der apache2 läuft als worker, sonst hätte ich den prefork Teil gepostet ;-) Wie er installiert wurde kann ich mit 'ps -ef | grep apache' nicht ermitteln, allerdings liefert mir 'dpkg -l | grep apache2' hier das worker Paket.

Momentan liegen die Werte der Spalte CPU im server-status beit gemittelt 9.00

Code: Select all

  Current Time: Monday, 08-Jun-2009 13:41:01 CEST
  Restart Time: Monday, 08-Jun-2009 05:05:11 CEST
  Parent Server Generation: 0
  Server uptime: 8 hours 35 minutes 50 seconds
  Total accesses: 22100 - Total Traffic: 484.4 MB
  CPU Usage: u18.02 s8.78 cu0 cs0 - .0866% CPU load
  .714 requests/sec - 16.0 kB/second - 22.4 kB/request
  11 requests currently being processed, 64 idle workers
[...]
cache type: SHMCB, shared memory: 512000 bytes, current sessions: 0
sub-caches: 32, indexes per sub-cache: 133
index usage: 0%, cache usage: 0%
total sessions stored since starting: 25
total sessions expired since starting: 25
total (pre-expiry) sessions scrolled out of the cache: 0
total retrieves since starting: 17 hit, 1 miss
total removes since starting: 0 hit, 0 miss



Ronny

rseffner
Posts: 8
Joined: 2009-06-05 17:51

Re: apache2 wird immer langsamer

Post by rseffner » 2009-06-08 14:17

Wenn ich das Richtig verstehe beendet sich jedes Child nun, nachdem es 10000 Requests abgearbeitet hat und ein neues wird eingestartet. Ich hatte das temporör härter gelöst, indem cron den task bekam nachts - in der Hoffnung da störe ich am wenigsten user - den apachen neu zu starten. Die interne Funktion ist natürlich schöner, weil so wohl keine sessions einfach so hart beendet werden. Warum aber ist der Server monatelang gelaufen ohne diese Probleme zu zeigen.
Die ganze Funktion um den von Dir betont zitierten Parameter scheint mir so, als vertraue man der eigenen Software nicht - im Grunde sollte ein digitaler Prozess doch nicht "altern", aber Windows soll man ja auch alle halben Jahre neu installlieren oder so ;-)

Ronny

rseffner
Posts: 8
Joined: 2009-06-05 17:51

Re: apache2 wird immer langsamer

Post by rseffner » 2009-06-09 10:54

Hallo Matthias,

zum Thema Vertrauen sagte ich nicht aus, sondern erwähnte den Schein - ich finde es aber unnötig, über solche interpretierbaren Kleinigkeiten zu diskutieren. apache hat Schnittstellen und keine Kontrolle darüber, was an diese so ranprogrammiert wird, nun denke ich in meinen laienhaften Ansätzen, könnte man diese Schnittstelle absichern oder eben dem OS die Ressourcenverwaltung überlassen - das Terminieren eines Childs scheint mir eher in letztere, einfachere Kategorie zu fallen. Aber ich habe auch keine Ahnung von der Komplexität der Verzahnug der Plugins in den Kerncode des apachen, darum sage ich weder aus noch urteile!

Zurück. Vllt. war die 10.000 ein wenig zu hoch, jedenfalls hatte ich den apachen gestern ggn. 14:20 Uhr mit diesen Optionen neu gestartet und musste heute ggn. 10:30 feststellen, das die Werte in der besagten Spalte CPU wieder über 17 lagen. Jetzt habe ich MaxRequestsPerChild mal auf nur 500 gesetzt.

Ferner habe ich einen zweiten debian/lenny Server, der weitestgehend identisch Konfiguriert ist, dort stehen in der Spalte CPU des server-status je 50% Einträge mit Werten von >50 und >105 drin, der Seitenabruf auf der Kiste geht aber flott - nicht, dass ich mich hier auf den flaschen Wert gestürzt habe? Was könnte/sollte man noch monitoren?

Ronny

rseffner
Posts: 8
Joined: 2009-06-05 17:51

Re: apache2 wird immer langsamer

Post by rseffner » 2009-06-09 11:31

Hallo noch mal,

ich kenne mich selbst ein wenig in der Programmierung aus, allerdings in Pascal; dort habe ich den Umgang mit Zeigern oft vermieden, eben weil es Fehleranfälliger war als das was die Sprache schon an Speicherverwaltung bot, allerdings performt der direkte Zugriff eben mehr und spart zudem Ressourcen.

Auf dem betroffenen System läuft seit dem Erkennen des Problemes munin, welches keinerlei Auffälligkeiten zeigt die eben mit der Zeit steigen. Ferner hatte ich mir einen kleinen Monitor gebaut, der eine SQL Abfrage regelmäßig und ungecached initiiert, auch dieser Lieferant (wie ich erwähnte prüft ja u.a. suexec gegen sql) unterliegt keinen auffälligen Schwankungen. Betroffen sind die Auslieferung statischer sowie auch dynamischter Inhalte. Neben dem üblich viel genutzten PHP habe ich einen Kunden der von python strach, eben dieser hat den Server gewechselt und es hat sich keinerlei Veränderung eingestellt. Die Festplatte könnte ich mittels 'hdparm' noch monitoren und natürlich auch die verfügbare Bandbreite an der NIC. Die Seiten einzeln umzuziehen wird kein leichtes Unterfangen, da würde ich vorher gern die anderen Möglichkeiten ausschöpfen.

Gibt es denn außer diesem server-staus keine weitere Möglichkeit (Werkzeug) solchen Dingen auf den Grund zu gehen? Und was hat es nun mit dieser Spalte CPU auf sich, wenn die Werte darin offenbar unrealistisch sind oder ich sie falsch interpretiere (wie geschrieben zeigt ein weiterer Server hier Werte über 100 Sekunden an und liefer die Seiten trotzdem "sofort")?

Danke, für Deine wiederholten Mühen.

Ronny