Performance-Optimierung durch clientseitiges HTTP-Caching

Performance-Optimierung durch clientseitiges HTTP-Caching

Schneller, höher, weiter: Langsame Websites haben, zumindest theoretisch, längst ausgedient. Schwache Responsezeiten und zäher Seitenaufbau verleiten zum sofortigen Wegklicken. Im Rahmen der Performance-Optimierung dreht sich vieles um die Cache-Funktionen. Auf Client-Seite findet sich häufig einiges an Raum zur Verbesserung. Dieser wird durch Cache-Control von HTTP-Headern optimal genutzt.

Warum Browser-Cache?

Jeder Browser speichert von einer Website abgerufene Ressourcen für eine gewisse Zeit im eigenen Cache zwischen. Beim erneuten Abruf überprüft der Browser zunächst, ob diese noch lokal abgespeichert sind, bevor es zu einem erneuten Download kommt. Das spart Zeit und Volumen, verkürzt die Abrufzeiten. Natürlich funktioniert dies nur, wenn userseitig ausreichend Platz zum Zwischenspeichern freigegeben wird, wenn nach einer Cache-Entleerung alle Inhalte erneut geladen werden müssen und wenn gecachte Inhalte veraltet sind. Deswegen will im Vorfeld eine sinnvolle Caching-Control-Strategie entwickelt werden.

Cachen oder nicht cachen?

Jeder Browser verfügt über gewisse Caching-Grundregeln, die weitestgehend ident sein sollten, unabhängig vom Hersteller. Dazu zählen:

  • Ermöglichte Zwischenspeicherung von GET-Responses mit bestimmten Status-Codes (u.a. 200, 301 und 410)
  • Kein Caching bei Serverantwort „no-store“ oder „no-cache“
  • Unterstützung von Funktion „Cache-Control: public“, um standardmäßig nicht abzuspeichernde Ressourcen in den Cache aufnehmen zu können

Beim Abgleich zwischen Browser-Cache und Server-Kommandos kann somit festgehalten werden, welche Ressourcen aus dem Cache zu laden sind, welche vom Server abzurufen wären und wo eine Revalidierung anzusetzen hätte.

Verfallsdatum und Revalidierung

Ressourcen aus dem Browsercache dürfen nur verwendet werden, solange diese „frisch“ sind. Durch entsprechende Serveranweisungen können Ablaufdaten bzw. Zeitspannen definiert werden, die einen erneuten Serverabruf erfordern. Solche Zeitspannen werden in Sekunden angegeben. Die Server-Cache-Anweisung „max-age=3600“ würde einen Ablauf der gecachten Ressource nach einer Stunde definieren. Per Revalidierung überprüft der Client nun, ob sich die Serverressource geändert hat. Durch serverseitige Validierungstoken und Zeitstempel erkennt der Browser, ob die Cache-Ressource noch gültig ist oder ob eine veränderte Version abzurufen wäre.

Caching per Proxy

Clientseitiges Caching geht allerdings weit über den reinen, lokalen User-Cache hinaus, denn zwischen Browser und Server befinden sich häufig verschiedene weitere Cache-Instanzen in Gestalt diverser Proxy-Server. Anfragen durchlaufen somit mehrere Cache-Ebenen, bevor die gewünschte Verbindung besteht und eine Erfüllung möglich ist. Auf diese Weise können bestimmte Anfragen verarbeitet werden, selbst wenn der eigentliche Server gerade nicht erreichbar sein sollte. Für den Proxy-Cache lassen sich ebenfalls verschiedene Anweisungen vergeben, die beispielsweise ein alleiniges Cachen durch den Browser, nicht aber durch den Proxy erlauben.

Was sich etwas kompliziert liest, muss keine Hexerei sein. Die pinzweb Werbeagentur übernimmt die komplette Performance-Optimierung Ihrer Website und findet die ideale Caching-Lösung für Sie. Gerne erläutern wir entsprechende Strategien im Rahmen eines kostenlosen Beratungsgesprächs!

Neuigkeiten per E-Mail erhalten

Fast täglich gibt es Neues, Faszinierendes rund um’s Online-Marketing, neueste Technologien und mehr zu berichten – und mit der Werbeagentur pinzweb.at GmbH & Co KG sind Sie natürlich immer live dabei!

Diese Webseite verwendet Cookies
Wir verwenden Cookies, um Inhalte und Anzeigen zu personalisieren, Funktionen für soziale Medien anbieten zu können und die Zugriffe auf unsere Webseite zu analysieren. Außerdem geben wir Informationen zu Ihrer Verwendung unserer Webseite an unsere Partner für soziale Medien, Werbung und Analysen weiter. Unsere Partner führen diese Informationen möglicherweise mit weiteren Daten zusammen, die Sie Ihnen bereitgestellt haben oder die im Rahmen Ihrer Nutzung der Dienste gesammelt haben.

Datenschutz
Diese Website verwendet Cookies, damit wir dir die bestmögliche Benutzererfahrung bieten können. Cookie-Informationen werden in deinem Browser gespeichert und führen Funktionen aus, wie das Wiedererkennen von dir, wenn du auf unsere Website zurückkehrst, und hilft unserem Team zu verstehen, welche Abschnitte der Website für dich am interessantesten und nützlichsten sind.

Unbedingt notwendige Cookies
Unbedingt notwendige Cookies sollten jederzeit aktiviert sein, damit wir deine Einstellungen für die Cookie-Einstellungen speichern können.

Marketing & Statistik
Diese Website verwendet Google Analytics, um anonyme Informationen wie die Anzahl der Besucher der Website und die beliebtesten Seiten zu sammeln. Diesen Cookie aktiviert zu lassen, hilft uns, unsere Website zu verbessern.

Google Tag Manager
Dies ist ein Tag-Management-System. Über den Google Tag Manager können Tags zentral über eine Benutzeroberfläche eingebunden werden. Tags sind kleine Codeabschnitte, die Aktivitätenverfolgen können. Über den Google Tag Manager werden Scriptcodes anderer Tools eingebunden. Der Tag Manager ermöglicht es zu steuern, wann ein bestimmtes Tag ausgelöst wird.