HTTP Caching

HTTP Caching

HTTP Caching ist eine Technik im Hypertext Transfer Protocol (HTTP), um Ressourcen (Dokumente, Bilder, Dateien allgemein) anhand bestimmter Kriterien in einem Cache zwischenzuspeichern, um unnötige Datenübertragungen, Serveranfragen zu vermeiden und Zugriffszeiten zu verringern. Da gleichzeitig sichergestellt werden muss, dass die übertragenen Inhalte nicht veraltet sind, ist es nötig, die Zwischenspeicherung von Internetseiten oder anderen Ressourcen genau steuern zu können. Im HTTP-Standard sind dafür eine Reihe von Tags definiert, die das Caching auf Client- und Proxyebene regeln.

Methoden für die Cachekontrolle

Für HTTP sind drei grundlegende Mechanismen definiert, um Caches zu kontrollieren: freshness „Frische“, validationValidierung, Gültigkeit“ und invalidation „Ungültigkeitserklärung, Entwertung“.

  • Freshness erlaubt es, eine bereits erhaltene Antwort wiederzuverwenden, ohne beim Ursprungsserver erneut nachfragen zu müssen und kann sowohl durch den Server wie auch den Client gesteuert werden. Zum Beispiel gibt der Expires-Header ein Datum an, zu dem das übertragene Dokument stale („abgestanden, schal“) wird, und die Angabe Cache-Control: max-age sagt dem Cache, wie viele Sekunden lang die Antwort fresh ist.
  • Validation kann verwendet werden, um zu überprüfen, ob eine zwischengespeicherte Antwort noch aktuell ist, nachdem sie schon stale geworden ist. Wenn die Antwort zum Beispiel einen Last-Modified-Header („zuletzt verändert um …“) besitzt, kann ein Cache eine konditionale Anfrage mit dem If-Modified-Since-Header („falls verändert seit …“) absenden um festzustellen, ob sie sich inzwischen geändert hat. Falls die Antwort „nein“ ist, muss der Inhalt nicht erneut gesendet werden.
  • Invalidation ist normalerweise eine Nebenwirkung einer anderen Anfrage, die den Cache passiert. Wenn zum Beispiel eine URL, für die eine zwischengespeicherte Antwort vorliegt, später mit einer POST-, PUT- oder DELETE-Anfrage (siehe HTTP) angesprochen wird, so wird die zwischengespeicherte Antwort entwertet, da die neue Anfrage sie höchstwahrscheinlich verändert hat.

Unter HTTP 1.1 gibt es die Möglichkeit im Header den HTTP ETag zu übergeben. Er kennzeichnet eine bestimmte Version einer Ressource.

Literatur

  • Chris Shiflett: HTTP developer's handbook. Sams Publishing, 2003, ISBN 9780672324543. S. 157ff.

Weblinks


Wikimedia Foundation.

Игры ⚽ Нужно сделать НИР?

Schlagen Sie auch in anderen Wörterbüchern nach:

  • HTTP pipelining — is a technique in which multiple HTTP requests are written out to a single socket without waiting for the corresponding responses. Pipelining is only supported in HTTP/1.1, not in 1.0.The pipelining of requests results in a dramatic improvement… …   Wikipedia

  • Caching — Cache [kæʃ] bezeichnet in der EDV eine Methode, um Inhalte, die bereits einmal vorlagen, beim nächsten Zugriff schneller zur Verfügung zu stellen. Caches sind als Puffer Speicher realisiert, die die Kopien zwischenspeichern. Sie können als… …   Deutsch Wikipedia

  • HTTP ETag — An ETag (entity tag) is an HTTP response header returned by an HTTP/1.1 compliant web server used to determine change in content at a given URL. When a new HTTP response contains the same ETag as an older HTTP response, the contents are… …   Wikipedia

  • HTTP ETag — ETag (für entity tag, etwa Entitätmarke) ist ein im HTTP 1.1 eingeführtes Header Feld. Es dient zur Bestimmung von Änderungen an der angeforderten Ressource und wird hauptsächlich zum Caching, also der Vermeidung redundanter Datenübertragungen,… …   Deutsch Wikipedia

  • List of HTTP header fields — HTTP Persistence · Compression · HTTPS Request methods OPTIONS · GET · HEAD · POST · PUT · DELETE · TRACE · CONNECT Header fields Cookie · ETag · Location · Referer DNT · …   Wikipedia

  • Liste der HTTP-Headerfelder — HTTP Header bzw. HTTP Header Felder (oft synonym genutzt; HTTP Header besitzt allerdings die Mehrdeutigkeit zwischen einem einzelnen Feld des Headerblocks und dem ganzen Headerblock. Hier wird für die Gesamtheit der Headerfelder der Begriff… …   Deutsch Wikipedia

  • List of HTTP headers — HTTP Headers form the core of an HTTP request, and are very important in an HTTP response. They define various characteristics of the data that is requested or the data that has been provided.This is an incomplete list of some of the HTTP headers …   Wikipedia

  • P2P caching — Peer to peer caching (P2P caching) is a computer network traffic management technology used by Internet Service Providers (ISPs) to accelerate content delivered over peer to peer (P2P) networks while reducing related bandwidth costs. P2P caching… …   Wikipedia

  • Database caching — Many applications today are being developed and deployed on multi tier environments that involve browser based clients, web application servers and backend databases. These applications need to generate web pages on demand by talking to backend… …   Wikipedia

  • Hyper Text Caching Protocol — Fonction partage de cache répartis Sigle HTCP Date de création janvier 2000 Port …   Wikipédia en Français

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”