Integriertes Caching

Content-Gruppen

  • Wie unterscheidet sich eine DEFAULT Content-Gruppe von anderen Inhaltsgruppen?

    Das Verhalten der DEFAULT Inhaltsgruppe ist genau das gleiche wie jede andere Gruppe. Das einzige Attribut, das die DEFAULT-Inhaltsgruppe besonders macht, ist, dass das Objekt in der DEFAULT-Gruppe zwischengespeichert wird, wenn ein Objekt zwischengespeichert wird und keine Inhaltsgruppe erstellt wurde.

  • Was ist die Option Cache-Control auf der Content-Gruppenebene?

    Sie können jeden Cache-Control-Header an den Browser senden. Es gibt die Option -cacheControl auf Inhaltsgruppenebene, mit der Sie den Cache-Control-Header angeben können, der in die Antwort an den Browser eingefügt werden soll.

  • Was ist die Option Minhit auf der Ebene der Inhaltsgruppen?

    Minhit ist ein ganzzahliger Wert, der die minimale Anzahl von Treffern für eine Cache-Richtlinie angibt, bevor das Objekt zwischengespeichert wird. Dieser Wert ist auf Inhaltsgruppenebene konfigurierbar. Es folgt die Syntax, um diesen Wert von der CLI zu konfigurieren.

    add/set cache contentGroup \<Content_Group_Name> [-minHits \<Integer>]

  • Was ist die Verwendung der Option ExpireAtLastByte?

    Mit der Option ExpireAtLastByte kann der integrierte Cache das Objekt ablaufen, sobald es heruntergeladen wurde. Nur Anforderungen, die zu diesem Zeitpunkt ausstehende Anforderungen sind, werden aus dem Cache zugestellt. Alle neuen Anforderungen werden an den Server gesendet. Diese Einstellung ist nützlich, wenn das Objekt häufig geändert wird, wie bei Aktienkursen. Dieser Ablaufmechanismus funktioniert zusammen mit der Flash-Cache-Funktion. Um die Option ExpireAtLastByte zu konfigurieren, führen Sie den folgenden Befehl von der Befehlszeilenschnittstelle aus:

    add cache contentGroup \<Group_Name> –expireAtLastByte YES

Cache-Richtlinie

  • Was ist eine Caching-Richtlinie?

    Richtlinien bestimmen, welche Transaktionen zwischenspeicherbar sind und welche nicht. Darüber hinaus fügen Richtlinien das standardmäßige HTTP-Caching-Verhalten hinzu oder überschreiben. Richtlinien bestimmen eine Aktion, wie CACHE oder NOCACHE, abhängig von den spezifischen Eigenschaften der Anforderung oder Antwort. Wenn eine Antwort mit Richtlinienregeln übereinstimmt, wird das Objekt in der Antwort der in der Richtlinie konfigurierten Inhaltsgruppe hinzugefügt. Wenn Sie keine Inhaltsgruppe konfiguriert haben, wird das Objekt der Inhaltsgruppe DEFAULT hinzugefügt.

  • Was ist ein politischer Treffer?

    Ein Treffer tritt auf, wenn eine Anforderung oder Antwort mit einer Cache-Richtlinie übereinstimmt.

  • Was ist ein Fräulein?

    Ein Fehler tritt auf, wenn eine Anforderung oder Antwort keiner Cache-Richtlinie entspricht. Ein Fehler kann auch auftreten, wenn die Anforderung oder Antwort einer Cache-Richtlinie entspricht, aber eine Überschreibung des RFC-Verhaltens verhindert, dass das Objekt im Cache gespeichert wird.

  • Ich habe die integrierte Caching-Funktion der Citrix ADC Appliance konfiguriert. Beim Hinzufügen der folgenden Richtlinie wird eine Fehlermeldung angezeigt. Gibt es einen Fehler im Befehl?

    add cache policy image_caching -rule exp1 | ns_ext_not_jpeg –action cache

    \> ERROR: No such command

    Im vorherigen Befehl sollte der Ausdruck innerhalb der Anführungszeichen liegen. Ohne Anführungszeichen gilt der Operator als der Rohroperator.

Speicheranforderungen

  • Welche Befehle kann ich auf der Citrix ADC Appliance ausführen, um den dem Cache zugewiesenen Speicher zu überprüfen?

    Um den für den Cache in der Citrix ADC Appliance zugewiesenen Speicher anzuzeigen, führen Sie einen der folgenden Befehle von der Befehlszeilenschnittstelle aus:

    • show cache parameter

      Überprüfen Sie in der Ausgabe den Wert des Parameters Speichernutzungslimit. Dies ist der maximale Speicher, der für den Cache zugewiesen wird.

    • show cache \<Content_Group_Name>

      Prüfen Sie in der Ausgabe die Werte der Parameter Speicherauslastung und Speicherauslastung, die den für die einzelne Content-Gruppe verwendeten und zugewiesenen Speicher angeben.

  • Meine Citrix ADC Appliance verfügt über 2 GB Arbeitsspeicher. Gibt es eine empfohlene Speicherbegrenzung für den Cache?

    Für jedes Modell der Citrix ADC Appliance können Sie dem Cache die Hälfte des Speichers zuweisen. Citrix empfiehlt jedoch, aufgrund der internen Speicherabhängigkeit etwas weniger als die Hälfte des Speichers zuzuweisen. Sie können den folgenden Befehl ausführen, um 1 GB Speicher für den Cache zuzuweisen:

    set cache parameter -memLimit 1024

  • Ist es möglich, Speicher für einzelne Content-Gruppen zu reservieren?

    Ja. Obwohl Sie Speicher für den integrierten Cache global zuweisen, indem Sie den set-cache-Parameter —memlimit ausführen <Integer>, können Sie einzelnen Inhaltsgruppen Speicher zuweisen, indem Sie den <Content_Group_Name> <Integer> Befehl set cache —memLimit ausführen. Der maximale Arbeitsspeicher, den Sie Inhaltsgruppen (kombiniert) zuweisen können, darf nicht den Speicher überschreiten, den Sie dem integrierten Cache zugewiesen haben.

  • Was ist die Abhängigkeit von Speicher zwischen integriertem Cache und TCP-Puffer?

    Wenn die Citrix ADC Appliance über 2 GB Arbeitsspeicher verfügt, reserviert die Appliance etwa 800 bis 900 MB Arbeitsspeicher und der verbleibende Speicher wird dem Betriebssystem FreeBSD zugewiesen. Daher können Sie dem integrierten Cache bis zu 512 MB Speicher zuweisen und der Rest wird dem TCP-Puffer zugewiesen.

  • Beeinflusst es den Caching-Prozess, wenn ich dem integrierten Cache keinen globalen Speicher zuweise?

    Wenn Sie dem integrierten Cache keinen Speicher zuweisen, werden alle Anforderungen an den Server gesendet. Um sicherzustellen, dass Sie dem integrierten Cache Speicher zugewiesen haben, führen Sie den Befehl show cache-Parameter aus. Tatsächlich werden keine Objekte zwischengespeichert, wenn der globale Speicher 0 ist, also muss dies zuerst festgelegt werden.

Überprüfungsbefehle

  • Welche Optionen gibt es für die Anzeige von Cache-Statistiken?

    Sie können eine der folgenden Optionen verwenden, um die Statistiken für den Cache anzuzeigen:

    • stat cache

      So zeigen Sie die Zusammenfassung der Cache-Statistiken an.

    • stat cache –detail

      Um die vollständigen Details der Cache-Statistiken anzuzeigen.

  • Welche Optionen gibt es für die Anzeige des zwischengespeicherten Inhalts?

    Um den zwischengespeicherten Inhalt anzuzeigen, können Sie denshow cache object Befehl ausführen.

  • Was ist der Befehl, den ich ausführen kann, um die Eigenschaften eines im Cache gespeicherten Objekts anzuzeigen?

    Wenn das im Cache gespeicherte Objekt beispielsweise GET //10.102.12.16:80/index.html lautet, können Sie die Details zum Objekt anzeigen, indem Sie den folgenden Befehl von der Befehlszeilenschnittstelle der Appliance ausführen:

    show cache object -url '/index.html' -host 10.102.3.96 -port 80

  • Ist es zwingend erforderlich, den Gruppennamen als Parameter anzugeben, um die parametrisierten Objekte im Cache anzuzeigen?

    Ja. Es ist obligatorisch, den Gruppennamen als Parameter anzugeben, um die parametrisierten Objekte im Cache anzuzeigen. Angenommen, Sie haben die folgenden Richtlinien mit derselben Regel hinzugefügt:

     add cache policy p2 -rule ns_url_path_cgibin -action CACHE –storeInGroup g1
     add cache policy p1 -rule ns_url_path_cgibin -action CACHE -storeInGroup g2
    

    In diesem Fall wird der Trefferindikator für mehrere Anforderungen erhöht, wenn die Richtlinie p1 ausgewertet wird, und die Richtlinie speichert das Objekt in der g1-Gruppe, die über Trefferparameter verfügt. Daher müssen Sie den folgenden Befehl ausführen, um die Objekte aus dem Cache anzuzeigen:

    show cache object -url "/cgi-bin/setCookie.pl" -host 10.102.18.152 groupName g1

    In ähnlicher Weise wird bei einem anderen Satz von mehreren Anforderungen, wenn die Richtlinie p2 ausgewertet wird, der Trefferzähler erhöht und die Richtlinie speichert das Objekt in der g2-Gruppe, die keine Trefferparameter enthält. Daher müssen Sie den folgenden Befehl ausführen, um die Objekte aus dem Cache anzuzeigen:

    show cache object -url "/cgi-bin/setCookie2.pl" -host 10.102.18.152

  • Ich stelle fest, dass es einige leere Einträge in der Ausgabe des nscachemgr-Befehls gibt. Was sind das für Einträge?

    Betrachten Sie die folgende Beispielausgabe des Befehls nscachemgr.. Die leeren Einträge in dieser Ausgabe werden für Ihre Referenz fett hervorgehoben:

     root@ns# /netscaler/nscachemgr -a
     //10.102.3.89:80/image8.gif
     //10.102.3.97:80/staticdynamic.html
     //10.102.3.97:80/
     //10.102.3.89:80/image1.gif
     //10.102.3.89:80/file5.html
     //10.102.3.96:80/
     //10.102.3.97:80/bg_logo_segue.gif
     //10.102.3.89:80/file500.html
     //10.102.3.92:80/
     //10.102.3.96:80/cgi-bin/rfc/ccProxyReval.pl
     Total URLs in IC = 10
    

    Die leeren Einträge in der Ausgabe sind auf die Standard-Caching-Eigenschaften für GET/HTTP/1.1 zurückzuführen.

Leeren von Objekten

  • Wie kann ich ein selektives Objekt aus dem Cache leeren?

    Sie können ein Objekt anhand der vollständigen URL eindeutig identifizieren. Um ein solches Objekt zu leeren, können Sie eine der folgenden Aufgaben ausführen:

    • Cache leeren
    • Inhaltsgruppe leeren
    • Das spezifische Objekt leeren Um das spezifische Objekt zu leeren, müssen Sie die Abfrageparameter angeben. Sie geben den Parameter InvalParam an, um das Objekt zu leeren. Dieser Parameter gilt nur für eine Abfrage.
  • Löst eine Änderung in der Cache-Konfiguration das Löschen des Caches aus?

    Ja. Wenn Sie Änderungen an der Cache-Konfiguration vornehmen, leeren alle SET-Cache-Befehle inhärent die entsprechenden Content-Gruppen.

  • Ich habe die Objekte auf dem Server aktualisiert. Muss ich die zwischengespeicherten Objekte leeren?

    Ja. Wenn Sie Objekte auf dem Server aktualisieren, müssen Sie die zwischengespeicherten Objekte oder zumindest die relevanten Objekte und Inhaltsgruppen leeren. Der integrierte Cache ist von einem Update auf den Server nicht betroffen. Die zwischengespeicherten Objekte werden weiterhin bedient, bis sie ablaufen.

Flash-Cache

  • Was ist die Flash-Cache-Funktion der Citrix ADC Appliance?

    Das Phänomen der Flash-Crowds tritt auf, wenn eine große Anzahl von Clients auf denselben Inhalt zugreifen. Das Ergebnis ist ein plötzlicher Anstieg des Datenverkehrs zum Server. Die Flash-Cache-Funktion ermöglicht es der Citrix ADC Appliance, die Leistung in solchen Situationen zu verbessern, indem nur eine Anforderung an den Server gesendet wird. Alle anderen Anforderungen werden in der Appliance in die Warteschlange gestellt, und die einzelne Antwort wird allen Anforderungen zugestellt. Sie können einen der folgenden Befehle verwenden, um die Funktion Schneller Cache zu aktivieren:

    • add cache contentGroup \<Group_Name> -flashCache YES
    • set cache contentGroup \<Group_Name> -flashCache YES
  • Was ist die Grenze für Flash Cache-Clients?

    Die Anzahl der Flash Cache-Clients hängt von der Verfügbarkeit der Ressourcen auf der Citrix ADC Appliance ab.

Standardverhalten

  • Empfangen die Citrix ADC Appliance nach Ablauf proaktiv Objekte?

    Die Citrix ADC Appliance empfängt niemals proaktiv Objekte nach Ablauf. Dies gilt auch für die negativen Objekte. Der erste Zugriff nach Ablauf löst eine Anforderung an den Server aus.

  • Fügt der integrierte Cache Clients zur Warteschlange hinzu, bevor er die Antwort erhält?

    Ja. Der integrierte Cache fügt Clients zur Warteschlange hinzu, um sie zu bedienen, noch bevor die Antwort empfangen wird.

  • Was ist der Standardwert für das zwischengespeicherte Objekt überprüfen mit dem Parameter der Cache-Konfiguration?

    HOSTNAME_AND_IP ist der Standardwert.

  • Erstellt die Citrix ADC Appliance Protokolleinträge in den Protokolldateien?

    Ja. Die Citrix ADC Appliance erstellt Protokolleinträge in den Protokolldateien.

  • Werden komprimierte Objekte im Cache gespeichert?

    Ja. Komprimierte Objekte werden im Cache gespeichert.

Interoperabilität mit anderen Funktionen

  • Was passiert mit Objekten, die derzeit im Cache gespeichert sind und über SSL VPN zugegriffen werden?

    Objekte, die im Cache gespeichert sind und auf die regelmäßig zugegriffen werden, werden als Cache-Treffer bereitgestellt, wenn über SSL VPN zugegriffen wird.

  • Was passiert mit Objekten, die im Cache gespeichert sind, wenn über SSL VPN zugegriffen und später über eine reguläre Verbindung zugegriffen wird?

    Die Objekte, die über den SSL-VPN-Zugriff gespeichert werden, werden als Treffer beim Zugriff über die reguläre Verbindung serviert.

  • Wie differenziere ich beim Verwenden von Weblogging Einträge, die eine Antwort aus dem Cache anzeigen, von denen, die vom Server bedient werden?

    Bei Antworten, die aus dem integrierten Cache bereitgestellt werden, enthält das Serverprotokollfeld den Wert IC. Bei Antworten, die von einem Server bereitgestellt werden, enthält das Serverprotokollfeld den vom Server gesendeten Wert. Es folgt ein Beispielprotokolleintrag für eine integrierte Caching-Transaktion:

    "10.102.1.52 - "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 4.0; .NET CLR 1.0.3705)" "GET /" 200 0 "IC" 10.102.1.45"

    Zusammen mit einer Clientanforderung ist die protokollierte Antwort diejenige, die an den Client gesendet wird und nicht notwendigerweise die vom Server gesendete Antwort.

Sonstiges

  • Was meinst du mit relexpiry und absexpiry?

    Durch die Konfiguration von relexpiry und absexpiry bedeutet dies, dass Sie den Header überschreiben, unabhängig davon, was im Header erscheint. Sie können verschiedene Ablaufeinstellungen und die Inhaltsgruppenebene konfigurieren. Bei relexpiry basiert der Ablauf des Headers auf dem Zeitpunkt, zu dem das Objekt vom Citrix ADC empfangen wurde. Bei absexpiry basiert die Ablaufzeit auf der im Citrix ADC konfigurierten Zeit. Relexpiry ist in Sekunden konfiguriert. Absexpiry ist eine Tageszeit.

  • Was meinen Sie mit der Konfiguration von weakpos und heuristisch?

    Die Weakpos und Heuristik sind wie Rückfallwerte. Wenn es einen Ablauf-Header gibt, wird es nur berücksichtigt, wenn der zuletzt geänderte Header vorhanden ist. Die Citrix ADC Appliance legt den Ablauf auf der Grundlage des zuletzt geänderten Headers und des heuristischen Parameters fest. Die heuristische Ablaufberechnung bestimmt die Ablaufzeit, indem der zuletzt geänderte Header überprüft wird. Ein gewisser Prozentsatz der Dauer seit der letzten Änderung des Objekts wird als Ablaufzeit verwendet. Die Heuristik eines Objekts, das über längere Zeiträume unverändert bleibt und wahrscheinlich längere Verfallszeiten aufweisen wird. –heurExpiryParam gibt an, welchen Prozentwert in dieser Berechnung verwendet werden soll. Andernfalls verwendet die Appliance den Wert weakpos.

  • Was sollte ich beachten, bevor ich das dynamische Caching konfigurieren?

    Wenn ein Parameter in Name-Wert-Form vorhanden ist und nicht über die vollständige URL-Abfrage verfügt oder die Appliance den Parameter in einem Cookie-Header oder POST-Body empfängt, sollten Sie das dynamische Caching konfigurieren. Um dynamische Zwischenspeicherung zu konfigurieren, müssen Sie den Parameter HitParams konfigurieren.

  • Wie wird die hexadezimale Kodierung in den Parameternamen unterstützt?

    Auf der Citrix ADC Appliance wird die %HEXHEX-Codierung in den Parameternamen unterstützt. In den Namen, die Sie für HitParams oder InvalParams angeben, können Sie einen Namen angeben, der in den Namen die Kodierung %HEXHEX enthält. Beispiel: name, nam%65 und n%61m%65 sind äquivalent.

  • Wie erfolgt die Auswahl eines hitParam-Parameters?

    Betrachten Sie den folgenden Auszug eines HTTP-Headers für eine POST-Anforderung:

     POST /data2html.asp?param1=value1&param2=&param3&param4=value4
     HTTP/1.1
     Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg,
     application/vnd.ms-powerpoint, application/vnd.ms-excel,
     application/msword, application/x-shockwave-flash, \*/\*
     Referer: http://10.102.3.97/forms.html
     Accept-Language: en-us
     Content-Type: application/x-www-form-urlencoded
     Accept-Encoding: gzip, deflate
     User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)
     Host: 10.102.3.97
     Content-Length: 153
     Connection: Keep-Alive
     Cache-Control: no-cache
     Cookie: ASPSESSIONIDQGQGGRNY=NNLLKDADEENOAFLCCDGFGDMO
     S1=This+text+is+only+text%2C+not+more+and+not+less%2C+%0D%0Ajust+text+to+be+itself%2C+namely+%22Text%22+to+be+posted+as+text+%28what+else...%29&B1=Submit
    

    In der obigen Anfrage können Sie S1 und B1 verwenden, die fett für Ihre Referenz hervorgehoben sind, je nach Ihren Anforderungen als HitParams. Wenn Sie -matchCookies YES in der Inhaltsgruppe ASPSESSIONIDQGQGGRNY verwenden, können Sie diese Parameter auch als HitParams verwenden.

  • Was passiert mit den Clients in der Warteschlange, wenn die Antwort nicht zwischengespeichert werden kann?

    Wenn die Antwort nicht zwischengespeichert werden kann, erhalten alle Clients in der Warteschlange dieselbe Antwort, die der erste Client empfängt.

  • Kann ich die PET- und Flash-Cache-Funktionen für dieselbe Content-Gruppe aktivieren?

    Nein. Sie können PET und Flash Cache nicht in derselben Inhaltsgruppe aktivieren. Der integrierte Cache führt keine AutoPET-Funktion für Flash-Cache-Inhaltsgruppen aus. Die PET-Funktion stellt sicher, dass der integrierte Cache kein gespeichertes Objekt bereitstellt, ohne den Server zu konsultieren. Sie können PET explizit für eine Content-Gruppe konfigurieren.

  • Wann werden die Protokolleinträge für die Clients in der Warteschlange erstellt?

    Die Protokolleinträge werden für die Clients in der Warteschlange erstellt, sobald die Appliance den Antwortheader erhält. Die Protokolleinträge werden nur erstellt, wenn der Antwort-Header das Objekt nicht nicht zwischenspeichern lässt.

  • Was ist die Bedeutung der DNS-, HOSTNAME- und HOSTNAME_AND_IP-Werte des zwischengespeicherten Objekts Verify unter Verwendung des Parameters der Cache-Konfiguration?

    Die Bedeutungen sind wie folgt:

    • set cache parameter -verifyUsing HOSTNAME

      Dadurch wird die Ziel-IP-Adresse ignoriert.

    • set cache parameter -verifyUsing HOSTNAME_AND_IP

      Dies entspricht der Ziel-IP-Adresse.

    • set cache parameter -verifyUsing DNS

      Hierbei wird der DNS-Server verwendet.

  • Ich habe weakNegRelExpiry auf 600 gesetzt, das ist 10 Minuten. Ich habe bemerkt, dass 404 Antworten nicht zwischengespeichert werden. Was ist der Grund?

    Dies hängt vollständig von Ihrer Konfiguration ab. Standardmäßig werden 404 Antworten für 10 Minuten zwischengespeichert. Wenn alle 404 Antworten vom Server abgerufen werden sollen, geben Sie -weakNegRelExpiry 0 an. Sie können -weakNegRelExpiry auf einen gewünschten Wert einstellen, z. B. höher oder niedriger, um die 404 Antworten entsprechend zwischengespeichert zu bekommen. Wenn Sie -absExpiry für positive Antworten konfiguriert haben, führt dies möglicherweise nicht zu den gewünschten Ergebnissen.

  • **Wenn der Benutzer über den Mozilla Firefox-Browser auf die Website zugreift, wird der aktualisierte Inhalt bereitgestellt. Wenn der Benutzer jedoch mithilfe des Microsoft Internet Explorer-Browsers auf die Website zugreift, wird veralteter Inhalt bereitgestellt. Was könnte der Grund sein? **

    Der Microsoft Internet Explorer-Browser nimmt möglicherweise den Inhalt aus seinem lokalen Cache anstelle des integrierten Citrix ADC Cache. Der Grund könnte sein, dass der Microsoft Internet Explorer-Browser den Ablauf-bezogenen Header in der Antwort nicht berücksichtigt.

    Um dieses Problem zu beheben, können Sie den lokalen Cache des Internet Explorers deaktivieren und den Offlineinhalt löschen. Nach dem Löschen des Offlineinhalts sollte der Browser den aktualisierten Inhalt anzeigen

  • Was ist, wenn Hits null sind?

    Überprüfen Sie, ob die Serverzeit und die NS-Zeit synchronisiert sind. Und das gesetzte Limit für weakPosrelexpiry sollte den Zeitunterschied zwischen NS und Server wie unten zeigen

     root@ns180# date
     Tue May 15 18:53:52 IST 2012
    
  • Warum erhalten Richtlinien Treffer, aber nichts wird zwischengespeichert?

    Stellen Sie sicher, dass dem integrierten Cache Speicher zugewiesen ist und dass die Zuweisung größer als Null ist.

  • Ist es möglich, die Cache-Zähler zu Null?

    Es gibt keine Befehlszeilen- oder GUI-Option, um die Cache-Zähler auf Null zu setzen, und das Leeren des Caches tut dies auch nicht. Wenn Sie das Feld neu starten, werden diese Leistungsindikatoren automatisch auf Null gesetzt.