ADC

Verbesserung der Cache-Leistung

Sie können die Leistung des integrierten Caches verbessern, indem Sie unter anderem gleichzeitige Anfragen für dieselben zwischengespeicherten Daten verarbeiten, Verzögerungen vermeiden, die mit der Aktualisierung zwischengespeicherter Antworten vom Ursprungsserver verbunden sind, und sicherstellen, dass eine Antwort oft genug angefordert wird, dass es sich lohnt, zwischengespeichert zu werden.

Reduzieren Sie Besucherandrang

Flash-Crowds entstehen, wenn viele Benutzer gleichzeitig dieselben Daten anfordern. Die Anfragen in einer Flash-Crowd können zu Cache-Fehlschlägen werden, wenn Sie den Cache so konfiguriert haben, dass Treffer erst dann bereitgestellt werden, wenn das gesamte Objekt heruntergeladen wurde.

Mit den folgenden Techniken können Sie Menschenansammlungen reduzieren oder verhindern:

  • PREFETCH: Aktualisiert eine positive Antwort, bevor sie abläuft, um sicherzustellen, dass sie niemals veraltet oder inaktiv wird. Weitere Informationen finden Sie im Abschnitt „Eine Antwort vor Ablauf aktualisieren“.
  • Cache-Pufferung: Beginnt mit der Bereitstellung einer Antwort an mehrere Clients, wenn der Response-Header vom Originalserver empfangen wird, anstatt darauf zu warten, dass die gesamte Antwort heruntergeladen wird. Die einzige Grenze für die Anzahl der Clients, die eine Antwort gleichzeitig herunterladen können, sind die verfügbaren Systemressourcen. Die NetScaler-Appliance lädt herunter und liefert Antworten, auch wenn der Client, der den Download initiiert hat, angehalten wird, bevor der Download abgeschlossen ist. Wenn die Antwort die Cachegröße überschreitet oder wenn die Antwort aufgeteilt wird, speichert der Cache die Antwort nicht mehr, der Service für die Clients wird jedoch nicht unterbrochen.
  • Flash-Cache: Flash Cache stellt Anfragen an den Cache in die Warteschlange und lässt zu, dass jeweils nur eine Anfrage den Server erreicht.

Weitere Informationen finden Sie im Abschnitt „Anfragen in den Cache einreihen“.

Eine Antwort vor Ablauf aktualisieren

Um sicherzustellen, dass eine zwischengespeicherte Antwort immer dann aktuell ist, wenn sie benötigt wird, aktualisiert die PREFETCH-Option eine Antwort vor ihrer berechneten Ablaufzeit. Das Prefetch-Intervall wird nach Empfang der ersten Client-Anfrage berechnet. Ab diesem Zeitpunkt aktualisiert die NetScaler-Appliance die zwischengespeicherte Antwort in einem Zeitintervall, das Sie im PREFETCH-Parameter konfigurieren.

Diese Einstellung ist nützlich für Daten, die zwischen Anfragen häufig aktualisiert werden. Sie gilt nicht für negative Antworten (z. B. 404-Nachrichten).

So konfigurieren Sie Prefetch für eine Inhaltsgruppe mithilfe der Befehlszeilenschnittstelle

Geben Sie an der Eingabeaufforderung Folgendes ein:

set cache contentgroup <name> -prefetch YES [-prefetchPeriod <seconds> | -prefetchPeriodMilliSec <milliseconds>] [-prefetchMaxPending <positiveInteger>]

*Um Prefetch für eine Inhaltsgruppe mithilfe der GUI zu konfigurieren

Navigieren Sie zu Optimierung > Integriertes Caching > Inhaltsgruppenund wählen Sie die Content-Gruppeaus.

Wählen Sie auf der Registerkarte Andere in der Gruppe Flash Crowd und Prefetch die Option Prefetch aus und geben Sie die Werte in den Textfeldern Intervall und Maximale Anzahl ausstehender Prefetches an.

Anfragen in den Cache einreihen

Die Flash-Cache-Option stellt gleichzeitig eingehende Anfragen in die Warteschlange (eine Flash-Crowd), ruft die Antwort ab und verteilt sie an alle Clients, deren Anfragen sich in der Warteschlange befinden. Wenn die Antwort während dieses Vorgangs nicht mehr zwischenspeicherbar ist, stellt die NetScaler-Appliance die Antwort aus dem Cache ein und übermittelt stattdessen die Antwort des Originalservers an die Clients in der Warteschlange. Wenn die Antwort nicht verfügbar ist, erhalten die Clients eine Fehlermeldung.

Flash Cache ist standardmäßig deaktiviert. Sie können Poll Every Time (PET) und Flash Cache nicht für dieselbe Inhaltsgruppe aktivieren.

Ein Nachteil von Flash Cache besteht darin, dass, wenn der Server mit einem Fehler antwortet (z. B. ein 404, der schnell behoben wird), der Fehler an die wartenden Clients weitergeleitet wird.

Hinweis: Wenn Flash Cache aktiviert ist, kann die NetScaler-Appliance in einigen Situationen den Accept-Encoding-Header in der Client-Anfrage nicht korrekt mit dem Content-Encoding-Header in der Antwort abgleichen. Die NetScaler-Appliance kann davon ausgehen, dass diese Header übereinstimmen und fälschlicherweise einen Treffer ausliefern. Um dieses Problem zu umgehen, können Sie integrierte Caching-Richtlinien so konfigurieren, dass Zugriffe nicht an Clients weitergeleitet werden, die nicht über einen geeigneten Accept-Encoding-Header verfügen.

So aktivieren Sie Flash Cache mithilfe der Befehlszeilenschnittstelle

Geben Sie an der Eingabeaufforderung Folgendes ein:

set cache contentgroup <contentGroupName> -flashcache yes

So aktivieren Sie Flash Cache mithilfe der GUI

Navigieren Sie zu Optimierung > Integriertes Caching > Contentgruppen, und wählen Sie die Content-Gruppe aus.

Wählen Sie auf der Registerkarte Andere in der Gruppe Flash Crowd and Prefetch die Option Prefetch aus.

Eine Antwort zwischenspeichern, nachdem ein Client einen Download angehalten hat

Sie können den Quick Abort-Parameter so festlegen, dass eine Antwort weiterhin zwischengespeichert wird, auch wenn der Client eine Anfrage stoppt, bevor sich die Antwort im Cache befindet.

Wenn die Größe der heruntergeladenen Antwort kleiner oder gleich der Quick Abort-Größe ist, stoppt die NetScaler-Appliance das Herunterladen der Antwort. Wenn Sie den Parameter Quick Abort auf 0 setzen, werden alle Downloads angehalten.

So konfigurieren Sie die Größe für einen schnellen Abbruch mithilfe der Befehlszeilenschnittstelle

Geben Sie an der Eingabeaufforderung Folgendes ein:

set cache contentgroup <name> -quickAbortSize <integerInKBytes>

So konfigurieren Sie die Größe für einen schnellen Abbruch mithilfe der GUI

  1. Navigieren Sie zu Optimierung > Integriertes Caching > Contentgruppen, und wählen Sie die Content-Gruppe aus.
  2. Stellen Sie auf der Registerkarte Speicher den entsprechenden Wert im Feld Schnellabbruch: Caching fortsetzen, falls mehr als das Textfeld ist.

Vor dem Caching ist eine Mindestanzahl von Serverzugriffen erforderlich

Sie können konfigurieren, wie oft eine Antwort mindestens auf dem Ursprungsserver gefunden werden muss, bevor sie zwischengespeichert werden kann. Sie müssen erwägen, die Mindestanzahl an Treffern zu erhöhen, wenn der Cache-Speicher schnell voll wird und die Trefferquote niedriger als erwartet ist.

Der Standardwert für die Mindestanzahl von Treffern ist 0. Dieser Wert speichert die Antwort nach der ersten Anfrage im Cache.

So konfigurieren Sie die Mindestanzahl von Treffern, die vor dem Zwischenspeichern erforderlich sind, mithilfe der Befehlszeilenschnittstelle

Geben Sie an der Eingabeaufforderung Folgendes ein:

set cache contentgroup <name> -minhits <positiveInteger>

So konfigurieren Sie die Mindestanzahl von Treffern, die vor dem Zwischenspeichern erforderlich sind, mithilfe der GUI

  1. Navigieren Sie zu Optimierung > Integriertes Caching > Contentgruppen, und wählen Sie die Content-Gruppe aus.
  2. Stellen Sie auf der Registerkarte Speicher den entsprechenden Wert unter Nicht zwischenspeichern ein, wenn die Treffer kleiner als das Textfeld sind.

Beispiel für Leistungsoptimierung

In diesem Beispiel greift ein Kunde auf einen Aktienkurs zu. Aktienkurse sind hochdynamisch. Sie konfigurieren den integrierten Cache so, dass derselbe Aktienkurs für gleichzeitige Kunden bereitgestellt wird, ohne mehrere Anfragen an den Ursprungsserver zu senden. Der Aktienkurs läuft ab, nachdem er auf die Clients heruntergeladen wurde, und die nächste Anfrage wird vom Ursprungsserver abgerufen. Dadurch wird sichergestellt, dass das Angebot immer auf dem neuesten Stand ist.

In der folgenden Aufgabenübersicht werden die Schritte zur Konfiguration des Caches für die Aktienkursanwendung beschrieben.

Caching für eine Aktienkursanwendung konfigurieren

Erstellen Sie eine Inhaltsgruppe für Aktienkurse

Weitere Informationen findest du unter „Über Inhaltsgruppen. „

Konfigurieren Sie für diese Inhaltsgruppe Folgendes:

  1. Aktivieren Sie auf der Registerkarte Ablaufmethode das Kontrollkästchen Nach Erhalt der vollständigen Antwort ablaufen.
  2. Aktivieren Sie auf der Registerkarte Andere das Kontrollkästchen Flash Cache und klicken Sie auf Erstellen.
  3. Fügen Sie eine Cache-Richtlinie hinzu, um die Aktienkurse zwischenzuspeichern.

Weitere Informationen finden Sie unter “Konfigurieren einer Richtlinie im integrierten Cache. “

Konfigurieren Sie Folgendes für die Richtlinie

  1. Wählen Sie in den Listen Aktion und In Gruppe speicherndie Option CACHE aus und wählen Sie die Gruppe aus, die Sie im vorherigen Schritt definiert haben.
  2. Klicken Sie auf Hinzufügenund konfigurieren Sie im Dialogfeld Ausdruck hinzufügen einen Ausdruck, der Aktienkursanfragen identifiziert, zum Beispiel: http.req.url.contains („cgi-bin/stock-quote.pl“)
  3. Aktivieren Sie die Richtlinie.

Weitere Informationen findest du unter „Eine integrierte Caching-Richtlinie weltweit verbindlich. „ In diesem Beispiel binden Sie diese Richtlinie an die Verarbeitung von Anforderungszeitüberschreibungen und legen die Priorität auf einen niedrigen Wert fest.