PHP-Seiten, SQL-Ergebnisse cachen

Hi @all!


Da ich auf versch. Websites nicht bei jedem einzelnen Seitenaufruf die gleichen SQL-Abfragen durchführen will, habe ich mich gefragt, ob es nicht möglich ist, bestimmte PHP-Seiten (die man z.B. per include() einbindet) oder bestimmte SQL-Abfragen zu "cachen", also für einen bestimmten Zeitraum abzuspeichern. Ziel ist es, bestimmte Teile der Website nur alle XX Minuten zu aktualisieren - mehr ist auch nicht nötig da ich sowieso nur selten etwas ändere.

Meine Frage ist also, wie man das am besten bewerkstelligen kann, denn so etwas habe ich noch nie gemacht.

Vielen Dank im Voraus!


MfG, BattleMaker
 
Die einfachste Möglichkeit wäre, den Output, den dieses zu inkludierende Skript produziert, in eine Datei zu schreiben. Dann prüfst du bei jedem erneuten Aufruf der Seite, ob diese Datei x Minuten oder älter ist (anhand der mtime und der aktuellen Systemzeit). Wenn ja, includest du erneut das Skript, sonst nur die Datei. Ist bissel Aufwand, aber die vom Verständnis her einfachste Möglichkeit, das zu implementieren.

Eine andere Möglichkeit wäre noch, allgemein PHP cachen zu lassen. Dafür gibt es ein paar fertige Lösungen, die eben nur auf dem Webserver eingerichtet werden müssten, z.B. eAccelerator.
 
Zurück
Oben