High-Performance Lighttpd config

W-Punkt

New Member
Hallo,

ich suche eine config die auf viele Userzahlen optimiert ist.
Das heißt um die 300 User zeitgleich online, 35k User täglich.

Aktuelle config :

Code:
server.max-fds = 8192
server.max-write-idle = 720
server.max-keep-alive-requests = 4
server.max-keep-alive-idle = 4

Hier hab ich teilweise lange Wartezeiten.

Alternativ hab ich schon mit hier dieser probiert.

Code:
server.max-fds = 8192
server.max-write-idle = 720
server.max-keep-alive-requests = 0
server.max-keep-alive-idle = 30
server.event-handler = "linux-sysepoll"
server.stat-cache-engine = "fam"

Hier bekomme ich allerdings Timeouts.

Bevor die Frage kommt, die Webseiten laufen auf MySQL. Dieser ist auch nur bedingt optimiert, aber dieser stellt zur zeit weniger das problem da.

Vielen Dank für eure Hilfe
W-Punkt
 
Code:
server.max-keep-alive-requests = 16
server.max-keep-alive-idle     = 5
server.max-read-idle           = 60
server.max-write-idle          = 360
server.stat-cache-engine       = "simple"

So sieht es auf einem meiner Server aus. Er läuft sehr performant bei im Schnitt 2000 Unique Visitors am Tag, 40.000 Seitenaufrufe am Tag.

Das alleine wird deine Seite aber nicht beschleunigen.

Was ist das für eine Seite, Forum, Wiki?
Ändert sich der Inhalt oft?
Andere Performanceoptimierungen?
Welche Ressourcen stellt die Server-Hardware zur Verfügung?

Hast du FAM-Support mit in lighttpd einkompiliert? Wenn nicht bringt das nichts. Dann solltest du auf "simple" ändern.
 
Last edited by a moderator:
Ich hab noch etwas mit der config rumgespielt und habe mit folgender recht gute Ergebnisse bekommen :

Code:
server.max-fds = 8192
server.max-connetions = 1365
server.max-write-idle = 360
server.max-keep-alive-requests = 16
server.max-keep-alive-idle = 5
server.event-handler = "linux-sysepoll"
server.network-backend = "linux-sendfile"
server.stat-cache-engine = "simple"

Hab gehört man könnte das "keep-alive-idle" auch deaktivieren (0), bringt das was. Wo wären hier die Vor/Nachteile.

Zusätzlich habe ich auch noch hier das geändert :

fastcgi
Code:
"max-procs" => 10,
		"idle-timeout" => 20,
		"bin-environment" => ( 
			"PHP_FCGI_CHILDREN" => "360",
			"PHP_FCGI_MAX_REQUESTS" => "2000"
		),

Die Hardware ist ein Intel Core2Duo E8400 3GHZ/ 4GB RAM.

Als nächstes werde ich mich an die Optimierung von MySQL machen.
Hier vielleicht schon vorab paar Tips für mich ?
 
"Userzahlen" sagen nichts aus. Ich schätze mal ein paar 100k Zugriffe pro Tag. Dabei langweilt sich der lighttpd zu Tode, egal welche Konfiguration. Deine Probleme werden eher von der PHP- bzw. Datenbankseite kommen.

10*360=3600 (!) PHP-Prozesse ist auf jeden Fall Unsinn. 10 sollten locker reichen um die CPU voll auszulasten. Lässt sich ja einfach ausprobieren.
 
Last edited by a moderator:
Back
Top