Beim MySQL-Tuning gilt es ebenfalls, die RAM-Grenze zu berücksichtigen, wobei der bereits durch Apache belegte Teil und der Grund-RAM des Betriebssystems abgezogen werden müssen. Die Einstellung „max_connections“ ist ausschlaggebend für die Gesamtmenge an RAM, die MySQL maximal belegen wird. Diese sollte im Einklang mit „MaxClients“ von Apache stehen.
[mysqld] long_query_time = 2 # Etwas über MaxClients von Apache max_connections = 30 key_buffer_size = 16M table_cache = 1024 query_cache_size = 32M sort_buffer_size = 4M
Listing 3
MySQL-Einstellungen sollten je nach TYPO3-Umgebung angepasst und insbesondere der Query-Cache höher gesetzt werden. Der Einsatz eines Auswertungsskripts [1] erleichtert das Tuning der vielen MySQL-Parameter. Damit „max_connections“ nie überschritten werden, sollte PHP keine persistenten MySQL-Verbindungen aufbauen, zu erreichen durch die Zeile „mysql.allow_persistent = Off“ in der „php.ini“ im Bereich „[MySQL]“.
Skalierbarkeit
Falls der Server viele statische Dateien ausliefern muss, diverse virtuelle Server beherbergt oder Flexibilität wichtig ist, ist es eine gute Alternative, Apache „prefork“ durch „workers“ zu ersetzen. So wird auf „mod_php“ verzichtet und stattdessen PHP als FastCGI betrieben: Schlankere Apache-Prozesse und per-VirtualHost-PHP-Umgebungen sind möglich [2]. Wenn tatsächlich die Grenzen der Skalierbarkeit eines Servers erreicht werden, ist stärkere Hardware die einfachste Lösung. Falls die Skalierbarkeit von vornherein berücksichtigt werden muss (um z. B. kurzzeitige Zugriffspeaks nach dem Versand eines Massen-Newsletters abzufedern), sollte über den Einsatz von einem Proxy vor dem Webserver beziehungsweise einem Webserver-Cluster vor der Datenbank oder über andere Methoden wie Datei-basiertes Caching nachgedacht werden.
Vertiefung
Das Tuning fängt mit den dargestellten kleinen Schritten erst richtig an. Wer eine kleine Seite betreibt, ist mit der Wahl des richtigen Providers (schnelle Internet-Anbindung, hochwertige Hardware, passendes Betriebssystem, guter TYPO3-Service) gut beraten und kann mit einfachen Mitteln seine Umgebung selbst tunen.
Wer professionelle Seiten betreiben möchte (hohe Zugriffszahl, Verfügbarkeitsgarantien etc.) sollte sich jedoch professionelle Hilfe holen und einen Provider favorisieren, der auf TYPO3-Hosting spezialisiert ist und Erfahrung in dem Bereich nachweisen kann. Ein TYPO3-Hosting-Paket oder ein Managed-TYPO3-Server sind in der Regel gut für den Standardeinsatz vorkonfiguriert. Der Provider ist in diesen Fällen gewöhnlicherweise auch TYPO3-Dienstleister und kann entsprechenden Service für das Tuning anbieten oder ein komplettes Performance-Konzept erarbeiten.





Eine Antwort
von tobias 23.09.2010 (15:04Uhr) 1.
In letzter Zeit habe ich mir mal begonnen das Ergebnis von einigen Tuning-Tipps für Typo3 mal wirklich nachzumessen.
Die ersten Ergebnisse sind hier zusammengefasst
Typo3 Geschwindikeit optimieren
Bisher hat nur der Einsatz eines Loadbalancers und der von eAccelerator wirklich messbare Verbesserungen gebracht. Noch besser ist natürlich statischer Cache. Aber meine Tests laufen ja auch noch