Cache-Inhalt verwalten

Da beim Caching eine Kopie der bereitgestellten Datei erstellt und gespeichert wird, müssen routinemäßig Pflegemaßnahmen ergriffen werden, damit der Cache ordnungsgemäß funktioniert. Die Dateien im Cache müssen auf Aktualität geprüft und ungültig gemacht werden, wenn sie nicht mehr mit den Dateien auf dem Ursprungsserver konsistent sind. Dieser Dateiverfallsprozess wird im Abschnitt Dateiverfall beschrieben. Außerdem müssen ungültige und nicht mehr verwendete Dateien aus dem Cache gelöscht werden, um Platz für neue Dateien zu machen. Dieser Cache-Bereinigungsprozess wird im Abschnitt Garbage-Collection beschrieben.

Dateiverfall

Die Aufgabe, die Objekte im Cache mit den Originalobjekten auf dem Inhaltsserver konsistent zu halten, wird als Aufrechterhalten der Cacheaktualität bezeichnet. Für jedes Dokument oder andere Objekt, das Caching Proxy im Cache speichert, wird ein Zeitpunkt errechnet, zu dem das Dokument verfällt.

Für HTTP-Seiten enthält der Header des Dokuments, der vom Inhaltsserver generiert wird, die Informationen zum Verfallszeitpunkt.

Weil das Protokoll FTP keine äquivalenten Informationen zur Verfallszeit enthält, generiert Caching Proxy für FTP-Dateien einen eigenen Header Last-Modified:, der auf den FTP-Verzeichnisinformationen der Dateien basiert, und berechnet anhand dieser Informationen die Verfallszeit. Kann der Proxy-Server für eine Datei auf dem FTP-Server keine Verzeichnisinformation abrufen, wird der für den FTP-URL passende Standardwert verwendet. Weil für FTP-Server kein Standarddatumsformat existiert, kann Caching Proxy die von einigen FTP-Servern gesendeten Angaben zu Datum und Uhrzeit möglicherweise nicht interpretieren. In diesen Fällen wird die Standardverfallszeit des Proxy-Servers verwendet. Durch Verwendung dieser Prozedur kann der Proxy-Server das Caching von HTTP-Seiten und FTP-Dateien auf ähnliche Weise durchführen.

Der Verfallszeitpunkt kann von einem Inhaltsserver auf eine der folgenden Arten angegeben werden (in der gewünschten Reihenfolge):

  1. Der Inhaltsserver gibt den Header Cache-control: s-maxage=n an. Damit wird dem Proxy-Server mitgeteilt, dass das Objekt für den Zeitraum von n Sekunden nach dem Empfang aktuell bleibt.
  2. Der Inhaltsserver gibt den Header Cache-control: max-age= n an. Damit wird dem Proxy-Server mitgeteilt, dass das Objekt für den Zeitraum von n Sekunden nach dem Empfang aktuell bleibt.
  3. Der Inhaltsserver gibt den Header Expires: n an. Damit wird dem Proxy-Server mitgeteilt, dass das Objekt für den mit n angegebenen Zeitraum aktuell bleibt.
  4. Der Inhaltsserver gibt mit dem Header Last-Modified:n den Zeitpunkt an, zu dem das Dokument zuletzt geändert wurde. Der Proxy-Server berechnet die Zeitspanne seit der letzten Änderung des Dokuments, multipliziert diese mit dem Faktor letzte Änderung für den Cache (Cache Last Modified), der in der Konfigurationsdatei des Proxy-Servers definiert ist, und geht dann davon aus, dass das Dokument für die errechnete Zeit gültig bleibt. Wenn der Inhaltsserver beispielsweise feststellt, dass das Dokument vor einer Woche (sieben Tage) zuletzt geändert wurde und der Faktor letzte Änderung für den Cache auf 0.14 gesetzt ist, geht der Proxy-Server davon aus, dass das Dokument ungefähr einen Tag lang gültig ist. Anweisungen zum Definieren des Faktors letzte Änderung für den Cache enthält der Abschnitt Cache-Aktualität konfigurieren.
  5. Wird keine dieser Informationen vom Inhaltsserver angegeben, sucht Caching Proxy nach der Einstellung für die Standardverfallszeit des Cache (Cache Default Expiry), die für den aktuellen URL gilt, und verwendet diese Einstellung als Verfallszeit. Anweisungen zum Definieren der Standardverfallszeit für den Cache enthält der Abschnitt Cache-Aktualität konfigurieren.

Nachdem die Verfallszeit wie oben beschrieben berechnet wurde, prüft Caching Proxy, ob ein Wert für die Mindesthaltezeit für diesen URL existiert. Ist dies der Fall und ist die angegebene Zeit länger als die errechnete Verfallszeit, wird die angegebene Mindesthaltezeit als Verfallszeit des Objekts verwendet. Dies gilt auch, wenn Caching Proxy für ein Dokument eine Verfallszeit von 0 Minuten berechnet. Sie müssen deshalb bei der Einstellung der Mindesthaltezeit sorgfältig vorgehen, um zu verhindern, dass veraltete Inhalte bereitgestellt werden. (Verwenden Sie zum Festlegen der Mindesthaltezeit die Anweisung CacheMinHold oder die Einstellung URL-Verfallszeit im Formular Cache-Konfiguration –> Einstellungen für Verfallszeit des Cache. Nähere Informationen hierzu finden Sie im Abschnitt Cache-Aktualität konfigurieren.)

Der endgültige Wert für die Verfallszeit wird mit der Zeit verglichen, die die Einstellung "Zeitlimit" angibt. Ist die Verfallszeit größer als der Wert für Zeitlimit, wird das Dokument zwischengespeichert. Andernfalls wird es dem Cache nicht hinzugefügt. (Anweisungen zum Festlegen des Werts für Zeitlimit finden Sie im Abschnitt Cache-Aktualität konfigurieren.)

Wenn das Dokument im Cache gefunden wird, die Verfallszeit aber überschritten ist, sendet Caching Proxy eine spezielle Anforderung, if-modified-since, an den Inhaltsserver. Diese Anforderung veranlasst den Inhaltsserver, das Dokument nur in dem Fall zu senden, wenn es seit dem letzten Empfang auf dem Proxy-Server geändert wurde. Wenn das Dokument nicht geändert wurde, sendet der Inhaltsserver nur eine entsprechende Nachricht und sendet die Seite nicht erneut. In diesem Fall ruft der Proxy-Server das Dokument aus dem Cache ab. Für FTP-Dateien simuliert der Proxy-Server diesen "if-modified-since"-Prozess. Wenn festgestellt wird, dass die Datei auf dem FTP-Server nicht geändert wurde, wird die Datei aus dem Cache abgerufen. Andernfalls wird die neuere Version vom FTP-Server abgerufen.

Zusätzliche Informationen zur Aktualität des Cache

Informationen zu Datumsangaben in FTP

Dies gilt nur für Forward-Proxy-Konfigurationen.

Da das Protokoll FTP nicht über so strenge Definitionen für Datum und Uhrzeit verfügt wie das Protokoll HTTP, können einige Faktoren dazu führen, dass der Header "Last-Modified", den der Proxy-Server für FTP-Dateien generiert, geringfügig vom tatsächlichen Datum der Datei abweicht. Dazu zählen folgende Faktoren:

Wenn eine FTP-Datei im Cache verfällt, simuliert der Proxy-Server die HTTP-Gültigkeitsüberprüfung "if modified since" für die FTP-Datei. Dazu wird erneut der FTP-Befehl LIST für die angeforderte Datei ausgeführt, wobei das Dateidatum aus der vom FTP-Server zurückgegebenen Antwort abgerufen und mit dem Datum verglichen wird, das der Proxy-Server beim ursprünglichen Anfordern der Datei aus dem Header "Last-Modified" generiert hat. Ist das Dateidatum unverändert, kennzeichnet der Proxy-Server die FTP-Datei im Cache als neu überprüft, setzt eine neue Verfallszeit für die Datei und gibt die Datei aus dem Cache zurück, anstatt sie erneut vom FTP-Server abzurufen. Weichen die beiden Dateidaten voneinander ab, ruft der Proxy-Server die Datei erneut vom FTP-Server ab und speichert die neue Kopie mit dem neuen Dateidatum im Cache.

Die Verzeichnisinformationen zu der Datei können nicht immer vom FTP-Server abgerufen werden. Falls der Proxy-Server das Dateidatum für die FTP-Datei nicht bestimmen kann, generiert er für die Datei keinen Header "Last-Modified". Stattdessen verwendet er den mit der Anweisung CacheDefaultExpiry angegebenen Wert für den URL, um zu bestimmen, wie lange die Datei zwischengespeichert bleiben soll. Nach Ablauf dieser Zeit ruft der Proxy-Server die Datei erneut vom FTP-Server ab. Wenn es den Anschein hat, dass die Anweisung CacheDefaultExpiry für bestimmte FTP-Dateien im Cache sehr häufig verwendet wird und diese Dateien häufig abgerufen werden (und auf diese Weise einen hohen Datenverkehr im Netz verursachen), sollten Sie in Erwägung ziehen, für diese speziellen Dateien eine differenziertere Angabe der Anweisung CacheDefaultExpiry zu verwenden. Auf diese Weise werden diese Daten länger zwischengespeichert.

Wenn Sie die Einstellungen für die Cache-Verfallszeiten mit den Konfiguration- und Verwaltungsformularen festlegen möchten, verwenden Sie das Formular Cache-Konfiguration –> Einstellungen für Verfallszeit des Cache –> Zeitlimit für Dateien im Cache. Ausführliche Informationen zum Festlegen von Verfallsdaten für Dateien im Cache finden Sie im Abschnitt Dateiverfall.

Cache-Aktualität konfigurieren

Wählen Sie in den Konfigurations- und Verwaltungsformularen Cache-Konfiguration –> Einstellungen für Verfallszeit des Cache aus, um die Verfallszeiten für Dateien im Cache festzulegen. Die folgenden Formulare sind hilfreich.

Verfallszeit auf URL-Basis

Legen Sie in diesem Formular die Mindestzeit fest, für die Dateien basierend auf ihren URLs im Cache gespeichert bleiben. Sie können für verschiedene URL-Anforderungsschablonen ein unterschiedliches Cache-Verhalten festlegen.

Die Referenzabschnitte zu den folgenden Anweisungen in Anhang B. Anweisungen in der Konfigurationsdatei beschreiben, wie Sie die Verfallszeit für Dateien auf URL-Basis in der Konfigurationsdatei des Proxy-Servers festlegen:

Standardeinstellungen für Verfallszeiten

Im Formular Einstellungen für Verfallszeit des Cache können Sie die Standardeinstellungen für die Verfallszeiten von verwendeten oder nicht verwendeten Dateien definieren. Sie können für HTTP-, FTP- und Gopher-Dateien und für verwendete und für nicht verwendete Dateien verschiedene Werte festlegen.

Außerdem enthält dieses Formular weitere Optionen für die Verfallszeit von Dateien:

Die Referenzseiten zu den folgenden Anweisungen beschreiben, wie Sie die Einstellungen für die Standardverfallszeit in der Konfigurationsdatei des Proxy-Servers festlegen:

Einstellungen für Faktor letzte Änderung

Im Formular Faktor letzte Änderung wird der Wert festgelegt, mit dem der Proxy-Server das Verfallsdatum für Cache-Dateien berechnet, die keine Verfallsdaten im Header enthalten. Sie können für Dateien, die mit verschiedenen Anforderungsschablonen übereinstimmen, unterschiedliche Werte definieren. Die erste Schablone, mit der eine Übereinstimmung erzielt wird, wird zur Berechnung des Verfallsdatums verwendet.

Informationen zum Festlegen des Faktors letzte Änderung (Last Modified) durch direktes Editieren der Konfigurationsdatei des Proxy-Servers finden Sie im Abschnitt CacheLastModifiedFactor - Wert zur Berechnung der Verfallsdaten angeben.

Cache-Zeitlimit

Im Konfigurationsformular Zeitlimit für Dateien im Cache können Sie die maximale Verweildauer einer Datei im Cache definieren. Die Zeitlimits werden basierend auf den Anforderungsschablonen definiert. Sie können festlegen, dass Dateien nach Ablauf des Zeitlimits gelöscht oder neu überprüft werden sollen. Mit diesen Einstellungen können Dateien, deren Verfallsdaten ungültig sind, oder Dateien mit sehr langen Verfallszeiten verwaltet werden.

Informationen zum Festlegen der maximalen Verfallszeit für Dateien im Cache durch Editieren der Konfigurationsdatei des Proxy-Servers finden Sie in den folgenden Abschnitten:

Garbage-Collection

Zu den Strategien, häufig aufgerufene URLs im Cache zu speichern und die Verwendung der Systemressourcen zu minimieren, gehört, dass Caching Proxy einen Bereinigungsprozess, die so genannte Garbage-Collection durchführt, bei dem alte oder nicht verwendete Dateien aus dem Cache entfernt werden, um Platz für aktuelle Dateien zu schaffen.

Bei der Garbage-Collection werden die Dateien im Cacheverzeichnis zunächst überprüft. Die verfallenen Dateien werden gelöscht, um den Cache zu verkleinern und Platz für neue Dateien zu schaffen. Die Garbage-Collection wird automatisch durchgeführt. Sie können jedoch einige Einstellungen konfigurieren, um den Prozess an Ihre Voraussetzungen anzupassen.

Garbage-Collection konfigurieren

Zum Konfigurieren der Garbage-Collection wählen Sie in den Konfigurations- und Verwaltungsformularen Cache-Konfiguration –> Einstellungen für Garbage-Collection aus. In diesem Formular können Sie den oberen Grenzwert und den unteren Grenzwert definieren. Diese Werte legen fest, wann die Garbage-Collection gestartet und gestoppt wird. Wenn der vom Cache belegte Speicherplatz den als oberen Grenzwert festgelegten Prozentsatz erreicht oder überschreitet, wird die Garbage-Collection gestartet. Die Garbage-Collection wird so lange fortgesetzt, bis der Prozentsatz des durch den Cache belegten Speicherplatzes kleiner-gleich dem unteren Grenzwert ist.

Sie können zwischen zwei Algorithmen für die Garbage-Collection wählen. Der Algorithmus responsetime (Antwortzeit) optimiert die Antwortzeiten, indem vorzugsweise große Dateien aus dem Cache entfernt werden. Der Algorithmus bandwidth (Bandbreite) optimiert die Nutzung der Netzbandbreite, indem vorzugsweise kleinere Dateien aus dem Cache entfernt werden. Sie können einen der beiden Algorithmen oder eine Kombination aus beiden auswählen.

Informationen zum Konfigurieren der Garbage-Collection durch Editieren der Konfigurationsdatei des Proxy-Servers finden Sie in den Referenzabschnitten zu den folgenden Anweisungen: