PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Wie Speicherbedarf von Apache2 limitieren?



nobody0
15.07.05, 01:20
Ich habe gerade mit top -c (+M) nachgesehen, was sich auf meinem Server tut, mußte aber feststellen, daß der Apache2 quasi Amok läuft:



Mem: 1034468k total, 1010168k used, 24300k free, 67500k buffers
Swap: 7253288k total, 3111240k used, 4142048k free, 89684k cached

PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
15684 wwwrun 34 19 119m 83m 25m S 0.0 8.3 0:31.63 /usr/sbin/httpd2-prefork -f /etc/apache2/httpd.conf
15683 wwwrun 34 19 119m 67m 25m S 0.0 6.6 0:21.66 /usr/sbin/httpd2-prefork -f /etc/apache2/httpd.conf
11438 wwwrun 34 19 119m 58m 25m S 0.0 5.8 0:22.13 /usr/sbin/httpd2-prefork -f /etc/apache2/httpd.conf
11442 wwwrun 34 19 119m 52m 25m S 0.0 5.2 0:12.14 /usr/sbin/httpd2-prefork -f /etc/apache2/httpd.conf
13783 wwwrun 34 19 98128 44m 25m S 0.0 4.4 0:09.87 /usr/sbin/httpd2-prefork -f /etc/apache2/httpd.conf
11439 wwwrun 34 19 119m 34m 25m S 0.0 3.4 0:21.20 /usr/sbin/httpd2-prefork -f /etc/apache2/httpd.conf
16078 wwwrun 34 19 119m 16m 25m S 0.0 1.7 0:12.68 /usr/sbin/httpd2-prefork -f /etc/apache2/httpd.conf


d. h. obwohl sich fast nichts tut, belegt er ein Großteil des RAMs von immerhin 1 GB, so daß selbst 2,5 GB Swap nicht ausreichten! :eek:
Wie kann man das abstellen? :confused:

Tomek
15.07.05, 08:17
1) schalte alle Apache-Module ab, die du nicht benötigst
2) konfiguriere das Threadmodell mpm-prefork - Hilfe dazu gibt es hier:
http://httpd.apache.org/docs-2.0/de/mod/prefork.html

nobody0
15.07.05, 09:04
Aha, danke.

Roger Wilco
15.07.05, 22:32
2) konfiguriere das Threadmodell mpm-prefork - Hilfe dazu gibt es hier:
http://httpd.apache.org/docs-2.0/de/mod/prefork.html
mpm-worker braucht soweit ich weiß von Haus aus weniger Speicher als mpm-prefork.

Tomek
16.07.05, 12:19
mpm-worker braucht soweit ich weiß von Haus aus weniger Speicher als mpm-prefork.
Und was ist dann mit PHP? Ist das immernoch so, dass mod_php damit nicht (sauber) läuft?

Roger Wilco
16.07.05, 12:25
Und was ist dann mit PHP? Ist das immernoch so, dass mod_php damit nicht (sauber) läuft?
Das kannst du nicht pauschalisieren. Es kommt auf die Erweiterungen an, welche du in mod_php eingebunden hast. Einige sind nicht threadsafe, andere schon.
Davon abgesehen braucht man sich aber nicht zu wundern, dass die Apache-Prozesse viel Speicher benötigen. Da nimmt man lieber FastCGI und lässt PHP darüber laufen.

Tomek
16.07.05, 12:38
Gibt es da eine Übersicht, welche Module funktionieren und welche nicht?

ml
16.07.05, 13:27
Wenn apache als eigener user läuft sollte man das auch mit der limits.conf lösen können!