it-swarm.com.de

Unterschied zwischen der minimalen Cache-Lebensdauer und dem Ablauf zwischengespeicherter Seiten

Auf Drupal Performance Page) haben Sie unter dem Feldsatz Cache zwei Optionen: Eine ist die minimale Cache-Lebensdauer und die andere ist das Ablaufen zwischengespeicherter Seiten.

enter image description here

Was ist der Unterschied zwischen diesen beiden.

35
Gokul N K

Ich habe nach einigen Stunden folgende Beobachtungen gemacht. Wenn es Lücken oder Fehler gibt, lassen Sie es mich wissen. Gerne mache ich Editionen.

Erster Beobachter, dass keine der Optionen unter dem CACHING voneinander abhängig sind. Wenn sie es wären, hätten Sie sie unter verschiedenen Feldsätzen (oder als abhängige Felder) gesehen. Notieren Sie sich diese Beobachtung, und wir werden sie später noch einmal wiederholen.

enter image description here

Beginnen wir mit der ersten Option Cache-Seiten für anonyme Benutzerenter image description here

Wenn Sie diese Option aktivieren, sagen Sie Drupal im Grunde

Hey Beast, hör zu, wenn ein anonymer Benutzer meine Website besucht.

  1. Speichern Sie den generierten HTML-Code in der Cache-Tabelle
  2. Damit ich allen Benutzern das gleiche Ergebnis anzeigen kann, bleiben meine Seiten für alle anonymen Benutzer gleich.
  3. Und löschen Sie die Seiten-Caches erst, wenn ich sage, alle Caches löschen.

Auch wenn Sie den Cache Pages for anonymous users Nicht aktivieren, kann die Seite von externen Cache-Systemen zwischengespeichert werden. ZB: Boost

Gehen wir nun zu den nächsten Optionen über, die Sie im Allgemeinen verwenden würden.

Ablauf der zwischengespeicherten Seiten

enter image description here

  1. Beachten Sie, dass diese Einstellung nichts mit den Drupal Datenbank- oder Cache-Tabellen) zu tun hat.
  2. Lesen Sie die Beschreibung The maximum time an external cache can use an old version of a page. Wie Molot betonte, ist das Schlüsselwort extern.
  3. Diese Option setzt also im Grunde das Header-Cache-Steuerelement auf public und den Maximalwert im Header auf den angegebenen Wert (in diesem Fall 1 Tag).
  4. Dieser Header weist die external Caching-Systeme an, den Server für diese Seite erst im Höchstalter aufzurufen, da sie diese Seite aus ihrem eigenen Cache anzeigen können. Nach dem Höchstalter sollte das Caching-System beim Server Drupal) erneut prüfen, ob sich der Inhalt geändert hat.

  5. Wenn es sich um einen Lackserver handelt, ruft er Apache nicht an und gibt die Seite aus dem Cache zurück. Nehmen wir also an, dass Varnish eine Seite zwischengespeichert hat und tausend verschiedene Benutzer eine Anfrage an diese Seite gestellt haben. Dies bedeutet, dass 1000 Anforderungen verarbeitet wurden, ohne den Apache-Server einmal zu treffen.

Minimale Cache-Lebensdauer enter image description here

Wenn Ihre Website keinen großen Datenverkehr aufweist oder Sie sich nicht sicher sind, wie hoch dieser Wert ist, sollten Sie diesen Wert als "Keine" belassen.

  1. Dieser Wert gilt nicht nur für die Seiten. Aber alle Cache-Objekte.
  2. Dieser Wert lautet: "Es ist in Ordnung, veraltete Cache-Objekte zu bedienen."
  3. In unserem Fall ist der Wert auf 5 Minuten eingestellt.
  4. Wenn Sie eine Seite haben, auf der die fünf neuesten Blogs auf Ihrer Homepage aufgelistet sind. Was die obigen Werte bedeuten, ist, dass, wenn ein neues Blog erstellt wird, das Blog für die fünf Minuten nicht in der Liste angezeigt wird.
  5. Wenn dieser Wert festgelegt ist, muss mindestens so viel Zeit vergangen sein, damit der Cache aktualisiert/neu erstellt werden kann, und eine Cache-Löschaktion muss ausgeführt werden [Eine Cache-Löschfunktion sollte ausgeführt werden].
40
Gokul N K

Dieser Artikel enthält einen guten Überblick über die Caching-Terminologie von Drupal: http://www.phase2technology.com/blog/caching-in-drupal/

Zusammenfassung der relevanten Punkte:

Die minimale Cache-Lebensdauer wird häufig falsch interpretiert, was bedeutet, dass "Seiten nach Ablauf dieser Zeit neu generiert werden". Was es tatsächlich bedeutet, ist, dass Seiten erst neu generiert werden, wenn mindestens so viel Zeit vergangen ist und ein Cache-Löschereignis aufgetreten ist.

Das Ablaufen zwischengespeicherter Seiten wird manchmal auch falsch interpretiert. Dieser Wert steuert, was als Maximalwert in einem Cache-Control-Header gesendet wird, und gibt Proxy-Servern daher an, wie lange sie die Seite bedienen dürfen, ohne Ihre Drupal Installation für eine neue Kopie zu fragen. Dies Dies bedeutet nicht, dass die Seite nach dieser Zeit neu generiert wird. Es bedeutet lediglich, dass der Proxyserver mit Drupal) erneut prüfen muss, ob nach dieser Zeit eine neue Version der Seite vorhanden ist. Drupal regeneriert eine Seite erst neu, nachdem ein Cache-Löschereignis aufgetreten ist.

19
jazzdrive3