Performancetuning

Performancetuning eines Apache Webservers

Anpassungen von Server- und Threadanzahl sowie Begrenzung von Clients

In der httpd.conf können im prefork- und worker-Modul Werte für die Anzahl von Servern, Threads und Clients den Wünschen entsprechend angepasst werden.

httpd.conf
# 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       40
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         4
MaxClients         40
MinSpareThreads     25
MaxSpareThreads     75
ThreadsPerChild     25
MaxRequestsPerChild  0
</IfModule>

 

Im prefork-Modul kann man die minimale und maximale Anzahl der Serverprozesse, die maximale Anzahl von Clients oder auch die maimale Anzahl an Requests pro Serverprozess.
Im Worker-Modul wird dies dann auf Threadebene verfeinert. So kann man dort die Anzahl an worker Threads anpassen.

Ein Neustart des Apache aktiviert die Einstellungen. Mehr Infos auf den verlinkten Seiten.

Weitere Infos unter Thomas Krenn - Apache Performance Tuning