Grav - Leistung & Caching

In diesem Kapitel werden wir die Konzepte von Leistung und Caching in Grav verstehen.

Performance

Der Begriff Leistung bezieht sich auf die Systemleistung in der Weise, dass sie eine höhere Systemlast bewältigen und das System so modifizieren kann, dass es eine höhere Last bewältigt.

Beachten Sie die folgenden Punkte in Bezug auf die Leistung von Grav -

  • Um eine bessere Leistung von Grav zu erzielen, können Sie PHP verwenden opcache und usercache. Der Opcache funktioniert gut mit PHP 5.4 und Usercache funktioniert schneller mit PHP 5.5, PHP 5.6 und Zend Opcache.

  • Das SSD(Solid State Drive), das einen Flash-Speicher verwendet und keine beweglichen Teile enthält. Manchmal wird der Cache im Benutzercache oder als Dateien gespeichert. So können SSD-Laufwerke eine bessere Leistung erzielen.

  • Virtuelle Maschinen sind die beste Möglichkeit, Anbieter im Rahmen der Cloud-Computing-Technologie zu hosten. Sie können die Ressourcen angeben, ohne mit physischen Geräten zu interagieren.Native hostingist schneller als virtuelle Maschine. Grav läuft auf virtuellen Maschinen besser, aber für eine optimale Leistung können Sie die native Hosting-Option verwenden.

  • Grav hat faster memoryIn seinem Cache wird viel Speicher verwendet, der eine bessere Leistung auf Ihrem Server bietet. Im Vergleich zu anderen Plattformen benötigt es weniger Speicher.

  • Grav verwendet shared hostingauf dem gemeinsam genutzten Server, um die Dinge zu teilen. Das gemeinsame Hosting ist kostengünstig verfügbar und kann manchmal zu einer Verlangsamung des Servers führen.

  • Multi-Core-Prozessoren werden verwendet, um mehrere Aufgaben schneller zu erledigen. Die erweiterten Prozessoren sind besser als diese Prozessoren, was dem Benutzer hilft, die Aufgabe zu erfüllen.

Caching

Im Allgemeinen sind Caches gespeicherte Daten in einem Cache-Speicher. Durch den Cache-Mechanismus wird Grav schneller, sodass der Browser Dateien aus dem Cache und nicht vom ursprünglichen Server abrufen kann. Dies spart Zeit und zusätzlichen Netzwerkverkehr.

Grav verwendet die Doctrine Cache-Bibliothek, die Folgendes unterstützt:

  • Auto (Standard) - Verwendet automatisch die Standardoption.

  • Datei - Gibt die Cache-Dateien an, die in der Datei vorhanden sind cache/ Mappe.

  • APC

  • XCache

  • Memcache

  • Redis

  • WinCache

Standardmäßig verwendet Grav die automatische Einstellung. Es wird versucht, APC, dann WinCache, XCache und zuletzt File.

Caching-Typen

Es gibt 5 Arten von Caching -

  • Zwischenspeichern der YAML-Konfiguration in PHP.

  • Core Grav-Caching für Seitenobjekte.

  • Zweig-Caching von Vorlagendateien als PHP-Klassen.

  • Bild-Caching für Medienressourcen.

  • Asset-Caching von CSS und jQuery mit Pipelining.

Das Caching der YAML-Konfiguration wird in der gespeichert /cacheMappe. Das Bild-Caching speichert seine Bilder im/imagesMappe. Die Konfigurationsoption für das Core-Grav-Caching ist in gespeichertuser/config/system.yml Datei wie unten gezeigt -

cache:
   enabled: true
   check:
      method: file
   driver: auto
   prefix: 'g'
  • Das enabled Option aktiviert das Caching, indem es auf true gesetzt wird.

  • Das method Option prüft auf Aktualisierungen in Seiten wie Dateien oder Ordnern.

  • Das driver Option gibt verschiedene Arten von Caching-Optionen an, z. B. Auto, Datei, APC, XCache, Memcache, Redis oder WinCache.

  • Das prefix Option definiert Cache-Präfix-Zeichenfolge.

Memcache-Optionen

Wenn Sie die verwenden memcached serverDann müssen Sie einige zusätzliche Konfigurationsoptionen hinzufügen, indem Sie die memcache Fahrer in der user/config/system.yml file. Diese Optionen können unter definiert werdencache: Gruppe.

cache:
...
...
   memcache:
      server:localhost
      port: 8080

Redis-Optionen

Wenn Sie verwenden redisDann müssen Sie mithilfe von einige zusätzliche Konfigurationsoptionen hinzufügen redis Fahrer in der user/config/system.yml file. Diese Optionen können unter definiert werdencache: Gruppe.

cache:
...
...
   redis:
   	server:localhost
      port: 8080

Die Twig-Vorlage verwendet einen eigenen Caching-Mechanismus, indem der Twig-Treiber in der verwendet wird user/config/system.yml Datei.

twig:
   cache: true
   debug: true
   auto_reload: true
   autoescape: false

Es hat einige Optionen wie -

  • cache Die Option aktiviert das Zwischenspeichern von Zweigen, indem sie auf true gesetzt wird.

  • debug Option aktiviert das Twig-Debug.

  • auto_reload Mit dieser Option werden die Änderungen neu geladen, indem sie auf true gesetzt werden.

  • autoescape Option wird verwendet, um die Zweigvariablen automatisch zu maskieren.

Caching und Ereignisse

Ereignisse können verwendet werden, wenn das Caching aktiviert ist. Dies kann für alle Ereignisse außer aktiviert werdenOnPageContentRaw, OnPageProcessed, OnPageContentProcessed, OnTwigPageVariables und OnFolderProcessedVeranstaltungen. Diese Ereignisse können auf allen Seiten und Ordnern verwendet und nur ausgeführt werden, wenn die Ereignisse verarbeitet werden. Diese Ereignisse können nicht ausgeführt werden, nachdem die Seite zwischengespeichert wurde.