Page 1 of 1

Webserver-Tuning

Posted: 2004-01-14 19:14
by vevelt
Tja, irgendwie fehlt eine Kategorie, in die Beiträge gepostet werden können, die viele Themenbereiche berühren... :-)

Nun ja, ich habe meinen Root-Server nun schon einige Monate und bin jeweils bemüht, die notwendigen Updates (kein Updatewahn!) zu installieren und die laufenden Dienste möglichst an meine Bedürfnisse anzupassen. Mittlerweile läuft nach dem Grundupdate auf Suse 8.2 (schade, dass ich anfangs nicht auf Debian gewechselt bin) ein Apache 1.3.27 mit MySQL 4.0.17, PHP 4.3.4, Postfix mit AntiVir und Squirrelmail-Webinterface...
Soweit bin ich wirklich glücklich, habe jedoch die letzten Tage versucht, meinen Webserver noch etwas zu tunen, damit dieser noch etwas reaktiver wird und bei vielen Usern, die gleichzeitig zugreifen, nicht merklich in die Knie geht.

Zuerst habe ich mit MySQL angefangen, indem ich den "Query Cache" aktiviert habe und die MaxConnections angepaßt habe:

Code: Select all

set-variable    = query_cache_size=12M
set-variable    = max_connections=200
Dann habe ich mich etwas mit Caching von PHP-Seiten beschäftigt und den TurckMM-Cache installiert und wie folgt eingerichtet:

Code: Select all

; TurckMM Cache
extension="/usr/share/extensions/no-debug-non-zts-20020429/mmcache.so"
mmcache.shm_size="16"
mmcache.cache_dir="/tmp/mmcache"
mmcache.enable="1"
mmcache.optimizer="1"
mmcache.check_mtime="1"
mmcache.debug="0"
mmcache.filter=""
mmcache.shm_max="0"
mmcache.shm_ttl="900"
mmcache.shm_prune_period="60"
mmcache.shm_only="0"
mmcache.compress="1"
Das bedeutet, dass 16MB compilierte PHP-Dateien gecacht werden und, falls der Cache voll sein sollte, die Einträge älter 15min rausgeworfen werden, um so Platz für die neuen zu cachenden Skripte zu schaffen. So sollten hauptsächlich immer die gebräuchlichsten Skripte auch im Cache liegen... :-)

Soweit meine Tuning-Maßnahmen, die, wie ich finde, schon sehr merklich positiv auf die Performance des Webservers im Zusammenspiel mit der Datenbank wirken.

Ich hatte schon einmal überlegt und probiert, mod_gzip in den Apache einzubinden, um (wenn der Browser es unterstützt), gepackt übertragen zu können, aber so begeistert bin ich davon nicht gewesen. Was habt ihr da für Erfahrungen? Wie habt ihr jenes eingerichtet?

Welche Tuning-Maßnahmen gibt es noch?

Danke & Gruß, Sebastian.

Re: Webserver-Tuning

Posted: 2004-01-14 19:39
by oxygen
Erstmal zu deinen jetztigen Einstellungen, du hast den Query Cache und Turck Cache recht groß bemessen, bei nur 256 MB Ram wäre ich da nicht so großzügig ran gegangen, bei 512 und mehr ist das natürlich komplett Okay.
Andere Typische Bereiche an denen man drehen kann:

DMA-Modus

Apache Einstellungen, wie MaxClients, SpareServers etc.
Im übrigen solltest du auf Apache2 wenn du wirklich was verbessern willst. Das dort integrierte mod_deflate ist mod_gzip auch weit überlegen.

Hinzufügen von Schlüsseln in die MySQL Tabellen, besonders bei eigenen Scripts denkt man da oft nicht dran

Re: Webserver-Tuning

Posted: 2004-01-14 19:47
by Joe User

Danke...

Posted: 2004-01-15 15:58
by vevelt
...für die Tips.
DMA-Modus für die Festplatte ist schon aktiv :-)
Noch scheue ich mich ein wenig vor Apache2. Gibt es hierzu ein Turorial, welches berücksichtigt, dass Confixx schon installiert ist und nachher wieder laufen soll?

Lieben Gruß, Sebastian.