Apache Performancetuning (Werte wie berechnen?)

Apache, Lighttpd, nginx, Cherokee
wecki
Posts: 101
Joined: 2005-01-27 08:55

Apache Performancetuning (Werte wie berechnen?)

Post by wecki »

Hallo,

ich möchte etwas mehr Performance aus meinem Apache2 holen.

Alle möglichen Dinge wie HostnameLookups auf OFF und nur die nötigsten Module hab ich geamcht.

Nun gibt es ja noch die folgenden Einstellmöglichkeiten:

# 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
# MaxClients ........... maximum number of server processes allowed to start
# MaxRequestsPerChild .. maximum number of requests a server process serves
<IfModule prefork.c>
StartServers 5
MinSpareServers 5
MaxSpareServers 10
MaxClients 20
MaxRequestsPerChild 0
</IfModule>

# pthread MPM
# StartServers ......... initial number of server processes to start
# MaxClients ........... maximum number of server processes allowed to start
# 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>

# perchild MPM
# NumServers ........... constant number of server processes
# StartThreads ......... initial number of worker threads in each server process
# MinSpareThreads ...... minimum number of worker threads which are kept spare
# MaxSpareThreads ...... maximum number of worker threads which are kept spare
# MaxThreadsPerChild ... maximum number of worker threads in each server process
# MaxRequestsPerChild .. maximum number of connections per server process (then it dies)
<IfModule perchild.c>
NumServers 5
StartThreads 5
MinSpareThreads 5
MaxSpareThreads 10
MaxThreadsPerChild 20
MaxRequestsPerChild 0
AcceptMutex fcntl
</IfModule>
Wie kann ich die Berechnen und was sind sinnvolle Werte?
wecki
Posts: 101
Joined: 2005-01-27 08:55

Re: Apache Performancetuning (Werte wie berechnen?)

Post by wecki »

Hallo,

was sind sinnvolle Apache2 Werte für:

StartServers
MinSpareServers
MaxSpareServers
MaxClients
MaxRequestsPerChild
ThreadsPerChild
MaxKeepAliveRequests

bzw. wie berechnet mann die denn am geschicktesten?

Ich weis,d as dies alles aufeinander aufbaut... Servers haben Childs und die haben Childs, welche wiederum Threads haben. Ist das soweit richtig? Gibt es soetwas wie eine Formel?
oxygen
Posts: 2138
Joined: 2002-12-15 00:10
Location: Bergheim

Re: Apache Performancetuning (Werte wie berechnen?)

Post by oxygen »

Erstmal wäre es wichtig zu wissen, welchen MPM du überhaupt benutzt (vermutlich prefork oder worker).
Denn auch nur die Einstellungen brauchst du optimieren, andere haben keinen Einfluss.
wecki
Posts: 101
Joined: 2005-01-27 08:55

Re: Apache Performancetuning (Werte wie berechnen?)

Post by wecki »

Worker nutze ich.
mr_vista
Posts: 57
Joined: 2006-08-01 22:33
Location: Berlin

Re: Apache Performancetuning (Werte wie berechnen?)

Post by mr_vista »

hallo,

also dazu müsstest du mir mal die hardwareausstattung des servers sagen. generell kann ich dir dieses dokument empfehlen: http://www.h07.org/projects/apachetuning/

...ansonsten ist mir neulig folgendes passiert, ich habe ein größeres projekt zu laufen und habe auf blauem dunst hinaus einfach mal die maxclients direktive auf 2500 gestellt und seit dem läuft das gesamte projekt ungefähr 20millionen mal schneller :)

lg