[httpd] Problem mit dem Service

bigbrother

New Member
Hallo

Ich habe ein Webserver am laufen unter RHEL 4.

Heute hat der httpd einfach seinen Dienst quitiert?
Das ist nun schon das 2 mal in der Woche.

Bevor ich den Service neu gestartet habe, habe ich mit "ps -e |grep httpd"
142 Prozesse am laufen???

Gibt es da Limitierungen?

In der httpd.conf sind folgende settings:

##
## Server-Pool Size Regulation (MPM specific)
##

# prefork MPM
# StartServers: number of server processes to start
# MinSpareServers: minimum number of server processes which are kept spare
# MaxSpareServers: maximum number of server processes which are kept spare
# ServerLimit: maximum value for MaxClients for the lifetime of the server
# MaxClients: maximum number of server processes allowed to start
# MaxRequestsPerChild: maximum number of requests a server process serves
<IfModule prefork.c>
StartServers 8
MinSpareServers 5
MaxSpareServers 20
ServerLimit 256
MaxClients 256
MaxRequestsPerChild 4000
</IfModule>

# worker MPM
# StartServers: initial number of server processes to start
# MaxClients: maximum number of simultaneous client connections
# MinSpareThreads: minimum number of worker threads which are kept spare
# MaxSpareThreads: maximum number of worker threads which are kept spare
# ThreadsPerChild: constant number of worker threads in each server process
# MaxRequestsPerChild: maximum number of requests a server process serves
<IfModule worker.c>
StartServers 2
MaxClients 150
MinSpareThreads 25
MaxSpareThreads 75
ThreadsPerChild 25
MaxRequestsPerChild 0
</IfModule>


Muss ich da noch was einstellen?


Danke


bigbrother
 
ServerLimit 256
MaxClients 256
Falls Du nicht 3 GB Speicher rumdümpeln hast, solltest Du diese Werte stark reduzieren.
Um wieviel, hängt vorallem von Deinen Speicher-Resourcen ab.
Aber ich schätze, daß Du locker auf 80 runter gehen kannst.

huschi.
 
Heftig viel=) Wie huschi schon sagte, stark reduzieren. Etwa so:

Code:
<IfModule prefork.c>
StartServers 4
MinSpareServers 4
MaxSpareServers 8
ServerLimit 100
MaxClients 100
MaxRequestsPerChild 8000
</IfModule>

Das eine Weile laufen lassen, dann kannst Du immer noch nach oben korrigieren.
"top" anwerfen und beobachten, wann Dir der Speicher ausgeht. Die Direktiven ServerLimit
& MaxClients studieren. Wieviel Speicher hat denn die Maschine? Jeweils 256 ist ganz schön heftig ;)

Gruss Rico
 
Last edited by a moderator:
Warum verwendest du nicht das worker MPM(ggf in Kombination mit F(ast)CGI)? Wie sind deine keep alive Einstellungen?
Aber ich schätze, daß Du locker auf 80 runter gehen kannst.
Was bringt es die Anzahl der Apache Prozesse künstlich zu limitieren? Besucher warten zu lassen bis ein Apache Prozess Zeit für sie hat ist nicht wirklich nett. Wäre es da nicht konsequenter den Server nur per Modem an das Internet anzuschließe, das würde die Anzahl der Apache Prozesse auch deutlich verringern?
 
Was bringt es die Anzahl der Apache Prozesse künstlich zu limitieren? Besucher warten zu lassen bis ein Apache Prozess Zeit für sie hat ist nicht wirklich nett.
Grundsätzlich wartet dabei keiner. Man unterbindet lediglich den schnellen RAM-Verbrauch wenn sich z.B. mehrere Crawler auf der Site austoben. Falls 80 Prozesse doch nicht reichen, sollte bigbrother sich sowieso Gedanken über eine größere Maschine machen.

huschi.
 
Back
Top