Effizientes Caching
Silktide lädt Ihre Seiten in einem echten Browser und prüft, wie lange jede Datei im Browser der Besucher zwischengespeichert werden darf, bevor sie erneut heruntergeladen werden muss. Dateien, die nur kurz oder gar nicht zwischengespeichert werden, werden zusammen mit den Daten gemeldet, die wiederkehrende Besucher unnötig herunterladen.
Warum das wichtig ist
Die meisten Dateien einer Website ändern sich kaum: Logos, Stylesheets, Skripte und Schriftarten sind auf jeder Seite und bei jedem Besuch gleich. Wenn ein Browser sie im behalten darf, lädt ein zurückkehrender Besucher sie sofort von seinem eigenen Gerät statt sie erneut herunterzuladen. Ohne Caching beginnt jeder Seitenaufruf bei null – wiederholte Besuche fühlen sich so langsam an wie der erste, und sowohl Ihre Besucher als auch Ihre Server werden immer wieder mit denselben Bytes belastet.
So beheben Sie das Problem
- Konfigurieren Sie Ihren Server so, dass er für statische Dateien eine lange Cache-Lebensdauer sendet – ein Jahr ist üblich:
# Antwort-Header für statische Dateien (1 Jahr)
Cache-Control: max-age=31536000, immutable
- Lösen Sie das Aktualisierungsproblem mit versionierten URLs: Wenn sich eine
Datei ändert, ändern Sie ihre URL (zum Beispiel
app.3f2a1.css). Browser behandeln die neue URL als neue Datei, sodass langes Caching niemals veraltete Inhalte ausliefert. Die meisten Build-Tools und können dies automatisch. - Verwenden Sie kurzes oder gar kein Caching für Inhalte, die stets aktuell sein müssen, z. B. das der Seite selbst.
So testet Silktide dies
- Laden der Seite in einem echten Browser und Auslesen der Caching-Anweisungen, mit denen jede Datei ausgeliefert wurde.
- Ermitteln statischer Dateien – wie Bilder, Stylesheets, Skripte und Schriftarten –, deren Cache-Lebensdauer kurz ist oder fehlt.
- Meldung jeder Datei mit ihrer aktuellen Cache-Lebensdauer und Größe, gewichtet danach, wie wahrscheinlich es ist, dass sie bei einem erneuten Besuch erneut heruntergeladen würde.
Fehlerbehebung
Wir ändern diese Dateien häufig
Dafür gibt es versionierte URLs: unbegrenzt cachen und die URL ändern, wenn sich der Inhalt ändert. Wenn Ihre Plattform URLs nicht versionieren kann, wählen Sie die längste Lebensdauer, bei der für Sie eine gewisse Veraltung noch vertretbar ist – selbst ein Tag ist deutlich besser als gar nichts.
Dateien von Drittanbietern werden gemeldet
Cache-Lebensdauern werden vom Server festgelegt, der die Datei ausliefert; Sie können das Caching für Skripte anderer Anbieter daher nicht beheben. Sie können abwägen, ob der Dienst die Kosten wert ist – siehe Code von Drittanbietern.