Dokumentenkorb
  • Der Dokumentenkorb ist leer.

    Um ein Dokument in den Korb zu legen können Sie es per Drag'n'Drop von der Seite in den Korb ziehen

Anpassungsfähiges Caching-Konzept

Das TYPO3-Konzept setzt nicht nur auf einen modularen Aufbau und die strikte Trennung zwischen T3-Core und Extensions, sondern zusätzlich bei der Auslieferung der Webseiten auf ein intelligentes und konsequentes Caching-Konzept. Richtig angewandt können mit diesem Caching-Konzept stabile Multisite-Installationen eingerichtet und betrieben sowie signifikante Performance-Steigerungen realisiert werden.

Dynamische Inhalte mindern die Performance

Generell ist die Ausgabe einer dynamischen Webseite unter TYPO3 ein sehr rechenintensiver Prozess.  Die Seitendarstellung wird im Wesentlichen durch die vorhandenen TypoScript-Anweisungen in Templates und die Zusammenfassung dieser Anweisungen in mehrdimensionale PHP-Arrays organisiert. Mittels dieser PHP-Arrays werden komplexe "Baumstrukturen" aus PHP-Objekten konfiguriert und aufgebaut. Diese PHP-Objekte rendern schließlich gemeinsam die auszugebende HTML-Seite.

Dieser rechenintensive Prozess würde, wenn für jeden Aufruf derselben Webseite ausgeführt, immer wieder viel Arbeitsspeicher und Prozessorkapazität verbrauchen. Im Ergebnis würde die Performance deutlich darunter leiden. Aus diesem Grund sieht TYPO3 vor, unveränderliche, statische Seiten nach ihrer Erzeugung als HTML-Code in der Datenbank zu speichern und diese bei einem erneuten Aufruf derselben Seite fertig auszuliefern, ohne den ganzen Ausgabe-Prozess neu anzustoßen. 

Das Cachen (also Speichern von bereits einmal ausgelieferten Seiten oder Seiteninhalten) hat Performance-Vorteile bei statischen Inhalten, ist aber bei Seiten, die dynamisch erzeugt werden müssen, beispielsweise bei Eingaben der Benutzer und Ausgaben von Rechenoperationen durch das System nicht geeignet. Zudem muss bei Inhaltsänderungen im Backend der Cache aufgefrischt werden, weil sonst zunächst der alte Content angezeigt werden würde.

Deshalb ist es ratsam, sich bereits in der Konzeptionsphase genau zu überlegen, welche der vorhandenen Caching-Möglichkeiten für welche Webseiten einzusetzen sind.

Das TYPO3 Caching-Konzept

Das TYPO3 Caching-Konzept sieht drei Möglichkeiten vor:

Serverseitiges Caching in der Datenbank - normales TYPO3 Caching

Standardmäßig ist bei TYPO3 das Cachen statischer Seiten und Seitenbereiche als Referenzen in der PHP-Datenbank aktiviert.

Serverseitiges Caching im Filesystem

Es gibt auch die Möglichkeit statische Seiten als echte HTML-Dateien im Filesystem des Servers zu speichern. Die HTML-Seiten werden direkt vom Webserver ausgeliefert, aktualisiert oder gelöscht, der  Aufruf des TYPO3-Systems entfällt für diese Seiten ganz.

Clientseitiges Caching auf dem Client-Browser durch den "Cache Control Header"

Webseiten lassen sich auch ausserhalb des Servers cachen. Durch dem "Cache Control Header", also einem Header-Eintrag nach dem HTTP/1.1-Protokoll, kann definiert werden, ob und wie lange eine Webseite im Proxy oder im Browsercache clientseitig zwischengespeichert wird. Dadurch werden Seiten, die mehrfach vom Benutzer aufgerufen werden, direkt aus dem Zwischenspeicher aufgerufen, ohne das TYPO3 rendern muss oder der Server aufgerufen wird. Der Nutzer surft praktisch "offline". Standardmäßig werden keine Cache Control Header gesendet, diese können seit der TYPO3-Version 3.8.0 mittels der TypoScript-Einstellung "config.sendCacheHeaders = 1" automatisch gesetzt werden.

Mit diesem Ansatz lassen sich signifikate Performancesteigerungen erzielen. Allerdings eignet sich dieser Ansatz wirklich nur bei statischen Seiten mit keinerlei dynamischen Inhalten, denn diese würden hierbei nicht angezeigt werden.

"Mischen" der Caching-Methoden

Außerdem lassen sich die hier vorgestellten Caching-Methoden auch untereinander mischen. So lassen sich je nach den konkreten Anforderungen für verschiedene Seiten oder Seiteninhalte in TYPO3 unterschiedliche Caching-Konzepte realisieren, um die jeweils optimale Performance zu erreichen.

Bessere Performance durch Caching

Wie ein Artikel aus der t3n-Ausgabe 2.06 nachweist, ist das Caching die beste Methode, um die Performance einer Website signifikant zu steigern. Den kompletten Artikel finden Sie hier.

Weitere Infos zum Thema Caching:
TYPO3 Caching

von typo3-handbuch.de

TYPO3 Caching

von typo3blogger.de

Case Study

congstar GmbH

  • 1Hochflexibles Templating System für maximale Designflexibilität.
  • 2Abstraktion der Shop Logik zur direkten Verzahnung mit dem CMS.
  • 3Umfangreiche Google Maps Integration im congstar Aufladefinder.

Lesen Sie die Case Study:

Besucher Historie