So notwendig die Anfragen an die Tabellen „pages“ und „sys_template“ also auch sind, es spricht auf den meisten Systemen nichts dagegen, die Summe aller TypoScript-Templates oder die Erreichbarkeiten der TYPO3-Seiten für kurze Zeit zwischenzuspeichern – also zu cachen – und so die Last von der Datenbank zu nehmen. Selbst 60 Sekunden Cache-Gültigkeit sparen der Datenbank viele hundert Anfragen pro Minute und machen das Gesamtsystem spürbar schneller. Stellt sich nur die Frage: Wohin mit den Caches?
Zusätzliches Caching durch PEAR::Cache
Das Modul „PEAR::Cache“ ist in der Lage, beliebig strukturierte Daten zwischenzuspeichern. Aus Performance-Gründen bietet sich das Caching in Dateien an, die Datenbank soll schließlich entlastet werden. Dabei muss vermieden werden, Daten im Netzwerkdateisystem zwischenzuspeichern, da dieses langsamer ist als ein lokales Dateisystem. Zwar muss dann jeder Webserver seinen eigenen Cache verwalten, was die Anzahl der Datenbankanfragen zunächst wieder erhöht. Jedoch rechtfertigt der Gewinn an Geschwindigkeit diesen Nachteil.
Nun geht es also darum, den Kern von TYPO3 so zu erweitern, dass Daten an den richtigen Stellen über PEAR::Cache zwischengespeichert werden.
Caching von Datenbankanfragen
Die umfangreichste Erweiterung, die am TYPO3-Kern vorgenommen wurde, betrifft das eben beschriebene Caching von Datenbankergebnissen. Das PEAR::Cache-Modul wird verwendet, um MySQL-Ergebnisse als PHP-Arrays in Cache-Dateien zwischenzuspeichern, die im lokalen Filesystem liegen. Das Lesen und Aufbereiten einer PEAR::Cache-Datei ist ähnlich schnell wie eine Datenbankanfrage, sofern die Datenbank nicht überlastet ist. Durch das lokale Caching kann also die Last auf die Datenbank extrem verringert werden.




![Social Commerce: Wird Pinterest der nächste Gamechanger? [Infografik]](http://t3n.de/uploads/t3n-news-post-365754_pinterest2_medium.jpg)

