Die Leseprobe

Webserver Survival Guide

Der Webserver Survival Guide ist das Buch über den professionellen Betrieb von Webservern - vom Nickles.de Administrator Thomas Wölfer. Behandelt wird unter anderem der Betrieb, die Sicherung und die Optimierung solcher Systeme. Hier eine Leseprobe.

1 Caching - wie man Rechnerleistung spart
Ich bin ein Gewohnheitstier. Ich rauche seit 20 Jahren die gleiche Zigarettenmarke, trage fast eben so lange Schuhe vom gleichen Hersteller und kann es auch nicht lassen ununterbrochen neue Programmiersprachen, Betriebssysteme und Softwarewerkzeuge auszuprobieren. Außerdem gehe ich immer in die gleichen Lokale. Und da bestelle ich auch immer die gleichen Getränke: Im Sommer gibt’s Weißweinschorle, im Winter Rotwein. Immer wieder.

Das mag nun langweilig erscheinen, es hat aber auch seine Vorteile. Ein Vorteil ist der, dass das Maß an Überfüllung im Lokal völlig gleichgültig ist. Egal wie viele andere Gäste das Lokal hat – wenige Sekunden nach dem Eintreten habe ich sehr verlässlich meinen Drink. Im Sommer Weißweinschorle, im Winter Rotwein. Immer sofort und ohne gefragt zu werden. Dummerweise will ich manchmal auch was anderes trinken, aber dann steht der Wein schon vor mir: Willkommen in der wunderbar ärgerlichen Welt des Caching.

Grundlagen zum Caching
Unter Caching versteht man Verfahren bei denen Daten zwischengespeichert werden. Die Zwischenspeicherung ist dafür da, damit eine spätere Anforderung nach den gleichen Daten schneller erledigt werden kann als das normal möglich ist. Im IT Bereich ist Caching deutlich weiter verbreitet als in Lokalen – und besonders im Internet ist das Cachen von Informationen extrem wichtig. Das ist auch der Grund warum sich gleich drei Kapitel dieses Buches mit verschiedenen Aspekten des Caching beschäftigen.

Weltweites, Site-weites Caching
Man kann bei der Erzeugung von dynamischen Webseiten Caching verwenden, man kann sogar ganze Websites cachen. Letzteres wird von Anbietern wie Akamai Technologies sogar weltweit durchgeführt: Mehr dazu erfahren Sie im Kapitel über Squid. Außerdem cachen auch ISPs Seiten die häufig abgefragt werden – das verringert den Traffic, der von Dial-Up Kunden erzeugt wird.

Caching im Browser
Natürlich cachen auch Browser Daten von Webseiten. Dabei werden die zuletzt besuchten oder geladenen Seiten und Dateien auf der lokalen Festplatte des Anwenders zwischengespeichert. Sowohl der Netscape als auch der Opera und der Internet Explorer bieten diese Möglichkeit, die dem Surfer ein schnelleres Surf-Verhalten vorgaukelt: Statt eine Seite immer wieder neu zu laden, wird sie einfach aus den lokalen Cache-Daten ausgelesen und angezeigt.

Das ist praktisch, denn eine lokal gespeicherte Seite wird natürlich deutlich schneller angezeigt als eine die erst per HTTP geladen werden muss. Doch dieses Vorgehen hat auch seine Nachteile. Was, wenn der Seiteninhalt sich in der Zwischenzeit verändert hat? – Der Surfer bekommt diesen Tatbestand dann gar nicht mit: Das liegt kaum im Interesse des Webseitenbetreibers. Noch schlimmer wird die Sache, wenn das Cachen von Caching-Proxies beim ISP übernommen wird. Dann hat weder der Surfer noch der Seitenbetreiber tatsächlich einen Einfluss darauf, welche Version einer Seite beim Surfer nun wirklich ankommt.

Zumindest ist das in der Theorie so, denn in der Praxis gibt es sehr wohl Einflussmöglichkeiten. Letztlich raten weder der Browser noch der Cache-Proxy des ISP nicht, wie lange eine Seite wohl Gültigkeit haben könnte, sondern versuchen das Verfallsdatum zu ermitteln. Wenn man als Seitenbetreiber die Browser der Clients und die Caching-Proxies der ISPs dabei richtig unterstützt, dann ist das Caching von Webseiten für alle von Vorteil.

Wie man das richtig macht, erfahren Sie im Rest dieses Kapitels.