Ich habe in den letzten Monaten immer mal wieder hier und da eine kleine Optimierung gemacht und überlege jetzt, ob ich den Cache noch effizienter nutzen kann.
Zur Zeit wird ein Thread 3 Minuten lang im Cache gehalten. Das spart durchaus einiges an Datenbankzugriffen ein, aber es könnte noch besser sein.
Der Nachteil ist aber, dass sämtliche Daten eines Threads im Cache sind und nicht aktualisiert werden können.
Das betrifft
- die BBCode-Tags thread, board und user, bei denen der Titel jeweils automatisch ergänzt wird - wenn ein verlinkter Thread einen anderen Titel bekommt, wird im gecachten Thread noch der alte Titel angezeigt
- alle User-Informationen wie Avatar, Homepage, Signatur und Anzahl der Artikel
Beim Editieren der eigenen Signatur, Homepage oder Avatar kann ich einen Hinweis hinzufügen, dass diese Informationen erst nach einer bestimmten Zeit in den Threads aktualisiert werden.
Was meint ihr, wie lange ich cachen sollte? 6 Stunden?
Ich könnte die Cache-Zeit auch von der Grösse des Threads abhängig machen. Bei grossen Threads lohnt sich ein längeres Cachen mehr.
edit: Es geht hier um das Cachen im Backend mittels memcached o.ä.
Last edited: 2012-01-21 14:06:01 +0100 (CET)