Apache, Python und Speicherlimit

29/08/2008 - 19:37 von Michael Jaros | Report spam
Hallo,

Ich habe Trac ( http://trac.edgewall.org ) mit mod_python auf einem
Rechner mit 128 MB RAM, Debian stable installiert, leider hat es beim 1.
Request allen Speicher aufgefressen und nie wieder hergegeben, sodass
keine Prozesse mehr gestartet werden konnten und ein Neustart notwendig
war.

Kann ich Apache/mod_python irgendwie so konfigurieren, dass auf jeden
Fall noch ein wenig Speicher übrig bleibt? Oder geht das vl. mit
mod_wsgi, fcgi, cgi? Die diversen Apache- und mod_python-Direktiven habe
ich mir schon angesehen und nur grobe Einstellmöglichkeiten (Anzahl
Worker etc.) gefunden.

Kommen die Vorgaben in /etc/security/limits.conf für den Apache, dessen
User www-data sich ja mMn nirgends authentifiziert, zur Anwendung?

LG,
Michael
 

Lesen sie die antworten

#1 Christof Meerwald
30/08/2008 - 00:15 | Warnen spam
On 29 Aug 2008 17:37:23 GMT, Michael Jaros wrote:
Ich habe Trac ( http://trac.edgewall.org ) mit mod_python auf einem
Rechner mit 128 MB RAM, Debian stable installiert, leider hat es beim 1.
Request allen Speicher aufgefressen und nie wieder hergegeben, sodass
keine Prozesse mehr gestartet werden konnten und ein Neustart notwendig
war.



Dass er beim ersten Request schon eingeht, ist allerdings ein wenig
eigenartig.


Kann ich Apache/mod_python irgendwie so konfigurieren, dass auf jeden
Fall noch ein wenig Speicher übrig bleibt? Oder geht das vl. mit
mod_wsgi, fcgi, cgi? Die diversen Apache- und mod_python-Direktiven habe
ich mir schon angesehen und nur grobe Einstellmöglichkeiten (Anzahl
Worker etc.) gefunden.



Wenn Speicher knapp ist, wuerd ich auf keinen Fall zusaetzliche Module in
den Apache laden - FastCGI sollte da wesentlich speicherschonender sein, da
davon auszugehen ist, dass nur ein Bruchteil aller Requests zum FastCGI
durchgeleitet werden und Requests fuer statischen Content speicherschonend
in einem schlanken Apache behandelt werden kann (bei Einsatz von mod_python
schleppt jeder Apache-Prozess den gesamten Ballast mit, auch wenn der Client
nur zB favicon.ico requested).

Evtl. lohnt es sich auch, den Apache durch einen lighttpd oder aehnliches zu
ersetzen.


Kommen die Vorgaben in /etc/security/limits.conf für den Apache, dessen
User www-data sich ja mMn nirgends authentifiziert, zur Anwendung?



Ich wuerde mal schaetzen, der Apache erbt die Limits von der Umgebung, aus
der er gestartet wird - das duerfte entweder vom init-Prozess (beim
Systemboot sein - vermutlich ohne Limits) oder vom root-User, wennst den
Apache ueber /etc/init.d neu startest.


Christof

http://cmeerw.org sip:cmeerw at cmeerw.org
mailto:cmeerw at cmeerw.org xmpp:cmeerw at cmeerw.org

Ähnliche fragen