it-swarm.com.de

Werden Ansichten über die zentralen Caching-Mechanismen zwischengespeichert, oder sollte ich das Caching direkt in jeder Ansicht festlegen?

Ich sehe, dass in jeder meiner Ansichten Cache-Einstellungen vorhanden sind. Muss ich diese festlegen oder führen die zentralen Caching-Mechanismen in/admin/config/development/performance automatisch einen Teil davon aus, und diese "zusätzlichen Einstellungen" in Ansichten sind, wenn ich das Standard-Caching-Verhalten von drupal Kern?

enter image description here

23
Nigel Waters

WAS: Core Performance Caching speichert und bedient die gesamte gerenderte Seite mit einer Cache-ID der URL. Das Zwischenspeichern von Ansichten geht darüber hinaus, um nur die Ansichtsausgabe zwischenzuspeichern.

WARUM: Es ist großartig für angemeldete Benutzer; Andere Blöcke auf der Seite sind möglicherweise dynamischer, aber die Ansicht muss nicht jedes Mal eine Abfrage für jeden Benutzer ausführen. Nur der gelegentliche Benutzer, der den Seitencache nach Ablauf der Cache-Lebensdauer generiert, läuft ab.

EINSTELLUNGEN: Wenn Sie zulassen, dass die "gerenderte Ausgabe" frischer als die Abfrage ist, können Sie beispielsweise Inhalte als neu markieren, andernfalls müssen Sie sie nur abgleichen.

GROSSES BILD: Drupal bedient die Seite dynamisch und verwendet einen Server, um Seiten in PHP zu erstellen und auf eine Datenbank zuzugreifen (oder In-Memory-Cache). Dies ermöglicht fantastische Funktionen und die Geschwindigkeit des Inhaltseditors ... aber der Kompromiss muss das Caching verstehen und es richtig machen.

MODULE!

Es gibt auch ein schönes Views Content Cache Modul, das den Views Cache beim Bearbeiten von Inhalten löscht. Wenn Sie weiter gehen möchten, sollten Sie auch Cache-Aktionen überprüfen. Ich würde Regeln empfehlen, um dies zu optimieren.

Darüber hinaus können Sie mit Blockcache Alter die Caching-Optionen "pro Rolle", Seite, Benutzer usw. für jeden Block auf Ihrer Site festlegen.

Sie können auch Seitenmanager und Bedienfelder hinzufügen. Auf diese Weise können Sie interessante Dinge tun, z. B. den Cache "pro Benutzer", "pro Rolle" oder eine Reihe anderer sehr nützlicher Konfigurationen festlegen. Obwohl ich persönlich Panels vermeide.

DOKUMENTATION: Für Caching und Leistung im Allgemeinen siehe die Drupal.org-Seite .

38
doublejosh

Views verwendet die Drupal Cache-APIs, erstellt jedoch einen eigenen Cache, der nicht mit dem normalen Drupal Seiten-/Block-Cache zusammenhängt).

Ansichten speichert die Ansichtsdefinition selbst zusammen mit der gerenderten Ansicht selbst zwischen. Die gerenderte Ansicht kann auf zwei Arten zwischengespeichert werden, entweder als Abfrageergebnis oder als tatsächlicher HTML-Code der Ansicht. Normalerweise möchten Sie den ausgegebenen HTML-Code zwischenspeichern, da dies die effektivste Leistung ist. In einigen Fällen, in denen Sie die Ausgabe basierend auf dem angemeldeten Benutzer ändern möchten, kann das Zwischenspeichern der Abfrage ebenfalls sehr effektiv sein.

Die Tabellen, die Views zum Speichern des Caches verwendet, lauten:

  • cache_views
  • cache_views_data
5
googletorp

Es gibt jetzt ein interessantes Modul namens Ansichten Cache Bully , das automatisch alle Ansichten (Abfrageergebnisse und Ausgabe) zwischenspeichert, mit Ausnahme von Ansichten mit exponierten Formularen. Mit dem Modul können Sie Ansichten auch manuell vom Caching ausschließen. Dies ermöglicht das Festlegen des Caching für alle Ansichten (mit Ausnahme der ausgeschlossenen) von einem zentralen Punkt aus.

3
Dave Bruns

Drupal 7 bietet Seiten-Caching, Seiten-Caching funktioniert jedoch nur für anonyme Benutzer und speichert keine Ansichten zwischen

Das Zwischenspeichern von Ansichten funktioniert jedoch sowohl für anonyme als auch für angemeldete Benutzer

2
Guy Schneerson