Wenn es um die Web-Performance geht, ist WordPress Cache nur eines von den Dingen, mit denen jeder Webseiten-Besitzer an irgendeinem Punkt zu tun hat. Wir lieben WordPress, aber es ist definitiv nicht die schnellste Plattform, besonders wenn man sie mit einer völlig statischen Webseite vergleicht. Ein Grund dafür ist einfach, dass es auf PHP basiert, das nur so schnell arbeiten kann wie PHP arbeitet. Wir haben einige massive Verbesserungen mit PHP 8.0 und PHP 8.1 gesehen, aber wenn Du Deine Webseite nicht richtig zwischenspeicherst, kann es immer noch zu Einbußen kommen.
Wäre es nicht schön, wenn Du Dich nicht darum kümmern müsstest, herauszufinden, welches Caching-Plugin das Beste ist? Nun, hier bei Kinsta kümmern wir uns um das Caching für Dich, damit Du Dich auf das Wachstum Deines Unternehmens konzentrieren kannst.
Was ist WordPress Cache?
Caching ist der Prozess des Speicherns von Ressourcen aus einer Anfrage und der Wiederverwendung dieser Ressourcen für nachfolgende Anfragen. Im Grunde genommen reduziert es den Arbeitsaufwand für die Generierung eines Seitenaufrufs.
Warum solltest Du den Cache verwenden? Das ist einfach, das Caching macht WordPress Webseiten schneller und reduziert die Belastung des Webservers. Aus diesem Grund sollte sich jede Webseite bemühen, so viel Caching wie möglich zu verwenden. Darüber hinaus reduziert es im Falle des CDN-Caching auch die Menge der Serverbandbreite, die für die Generierung eines Seitenaufrufs erforderlich ist, indem es statische Ressourcen außerhalb Deines WordPress-Hosts speichert.
Es werden keine WordPress Caching Plugins bei Kinsta benötigt.
Das ist richtig! Wenn Du Deine WordPress-Seite bei Kinsta hostest, musst Du Dir keine Sorgen machen, dass Du Dich mit komplizierten und verwirrenden Caching-Plugins anlegen musst. Das liegt daran, dass wir verschiedene Arten von Caching bereits implementiert haben. Du kannst endlich aufhören, nach den „besten Caching-Plugins in 2024“ zu googeln und Dich auf produktivere Aufgaben konzentrieren.
Bei Kinsta verwenden wir die folgenden vier Arten von Cache, die alle automatisch auf Software- oder Serverebene durchgeführt werden:
Viele unserer Kunden berichten von einer enormen Verkürzung der Ladezeiten, allein durch die Migration zu Kinsta. Nachfolgend ein Beispiel für eine Website, die eine Leistungssteigerung von 212,5% verzeichnete. Und das ohne installierte Caching-Plugins.
Es gibt auch andere Variablen, die an der Verkürzung der Ladezeit beteiligt sind, aber das Caching ist ein großer Teil davon. Wir sagen nicht, dass alle Caching-Plugins schlecht sind, in der Tat, oft liegt es daran, dass der Benutzer das Caching-Plugin nicht richtig konfiguriert hat, was wiederum seine WordPress-Seite verlangsamt. Hast Du jemals versucht, den W3 Total Cache zu konfigurieren? Es kann ziemlich schnell geradezu verwirrend werden.
Aber lassen wir andere Nutzer für sich sprechen.
Und was die Leistung betrifft, so glaube nicht einfach uns, sondern schaue Dir die Meinungen einiger anderer Nutzer an, die zu Kinsta umgezogen sind. Alle diese Nutzer verwenden kein Caching Plugin mehr.
An instant 37% reduction in the loading time after moving @WPColt to @kinsta! (NO CACHING PLUGINS) 🚀🚀🚀
— WPColt (@WPColt) January 3, 2018
Quite impressed what @googlecloud and @kinsta can pull of for #WordPress hosting! #DevOps #Cloud #WPDev #webdevelopment pic.twitter.com/Cr7UMaHdpH
— Neuralab (@Neuralab) July 22, 2017
@TheSportReview's new @Googlecloud based @kinsta environment handled the post-match @ManUtd v @ChelseaFC traffic spike in style 👌⚽ pic.twitter.com/kJewykSqaV
— Martin Caparrotta (@MartinCap) April 16, 2017
60%+ drop in @pingdom load times for @voompla after move to @kinsta + @CloudFlare CDN + site optimization! support by @tomzur @MarkGavalda
— Palash Bakshi (@ppbakshi) September 11, 2016
Typ von WordPress-Caching
Lass uns nun in jeden Typ von WordPress-Caching eintauchen, den Du hier bei Kinsta regelmäßig antreffen wirst. Wenn Du verstehst, was die einzelnen Ebenen des Caching bewirken, kannst Du Probleme im Zusammenhang mit dem Cache beheben und sicherstellen, dass Deine Webseite reibungslos funktioniert.
Bytecode Cache
Bytecode Cache speichert kompilierten PHP-Code, so dass bei der nächsten Verwendung der Kompilierungsschritt übersprungen werden kann. Bei Kinsta haben wir OPcache in PHP 7.3 und 7.4 aktiviert (und werden es in neueren Versionen von PHP aktivieren, sobald sie auf unserer Plattform veröffentlicht werden).
Update: PHP 8.1 (offizielles Release) ist jetzt für alle Kunden von Kinsta verfügbar. PHP 7.4 wird von Kinsta nicht mehr unterstützt. Bitte beachte, dass wir die PHP-Versionen 8.1, 8.2 und 8.3 unterstützen.
Wenn eine PHP-Datei oder ein Skript verarbeitet wird, muss sie zunächst in maschinenlesbaren Opcode übersetzt werden. Was OPcache macht, ist, den konvertierten Opcode zu speichern, so dass PHP den Kompilierungsschritt überspringen kann, wenn die nächste Datei oder das nächste Skript benötigt werden. Die Verwendung von OPcache verbessert die Leistung von PHP erheblich. Das bedeutet jedoch, dass Änderungen an PHP-Dateien nicht sofort berücksichtigt werden. Aus diesem Grund ist der OPcache auf Kinsta WordPress Staging-Seiten deaktiviert.
Lese mehr darüber, wie OPcache PHP-Anwendungen beschleunigt.
Objekt Cache
Der Objekt-Cache speichert die Ergebnisse von Datenbankabfragen, so dass beim nächsten Mal, wenn ein bestimmtes Bit an Daten benötigt wird, diese aus dem Cache geliefert werden können, ohne die Datenbank abzufragen. Dies beschleunigt die PHP-Ausführungszeiten und entlastet Deine WordPress Datenbank.
WordPress verfügt über einen integrierten Objekt-Cache: WP_Object_Cache
. Dieser Objekt-Cache speichert jedoch nur Objekte für einen einzelnen Seitenaufbau. Der Zweck des Caches ist es, sicherzustellen, dass die Datenbank nicht mehrmals während eines einzelnen Pageloads auf die gleiche Weise abgefragt wird. Cache-Objekte werden jedoch nach dem Laden einer einzelnen Seite nicht mehr verwendet. Während dies eine nützliche Funktion in WordPress ist, ist das Objekt-Caching viel leistungsfähiger, wenn die Cache-Objekte zwischen mehreren Seitenladungen verwendet werden können.
Du kannst dieses Verhalten ändern und zwischengespeicherte Objekte für mehrere Seitenladungen wiederverwenden, indem Du vom integrierten Objekt-Cache von WordPress zu einer externen Lösung wechselst. Dies geschieht durch das Ablegen eines Caching-Skripts in das Verzeichnis /wp-content/
. Es gibt Plugin-basierte Objekt-Cache Optionen wie W3 Total Cache.
Unsere Kunden bei Kinsta können auch unser Redis add-on kaufen und es neben PHP 8.0 oder 8.1 installieren lassen. Redis ist ein Open Source, In-Memory-Datenstrukturspeicher, der als Datenbank, Cache und Message Broker verwendet wird. Lies unseren Artikel darüber, wie Du Redis als persistenten Objekt-Cache verwenden kannst.
Seiten-Cache
Seiten-Caching speichert das gesamte HTML einer Seite, so dass nachfolgende Pageviews generiert werden können, ohne dass WordPress die Seite generieren muss.
Wenn Du eine WordPress-Webseite lädst, muss WordPress eine große Anzahl von PHP-Dateien verarbeiten und die Datenbank mehrmals abfragen. Bei Seiten, die nicht ständig aktualisiert werden, ist dies eine Verschwendung von Aufwand. Es ist viel effektiver, jede Seite nur einmal zu generieren, dann diese Seite zu speichern und die nachfolgenden Besucher zu beliefern. Das ist es, was das Page Caching bewirkt.
Zu den Vorteilen des Seiten-Caching gehören:
- Viel schnellere Seitenladezeiten.
- Dramatisch reduzierte Serverlasten und die Möglichkeit, dramatisch mehr Traffic zu bewältigen.
Unsere Server benutzen das nginx fastcgi cache module
für das Seiten-Caching, und es ist so eingestellt, dass es standardmäßig jede Stunde abläuft. Kunden können den Ablauf des Seiten-Caches jedoch jederzeit im MyKinsta-Dashboard ändern. Um die Verfallszeit des Seiten-Caches zu ändern, gehe auf die „Werkzeuge“-Seite deiner Seite, klicke auf das „Ändern“-Dropdown-Menü unter „Seiten Cache“ und klicke auf „Cache-Verfallszeit ändern„.
Wähle unter „Cache-Verfallszeit ändern“ die gewünschte Verfallszeit aus und klicke auf „Verfallszeit ändern„. Wir bieten Optionen von 1 Stunde bis 7 Tage an. Für Seiten, die sich nicht oft ändern, kann es in Bezug auf die Leistung vorteilhaft sein, eine längere Cache-Verfallszeit zu haben.
Der Seiten-Cache ist so konfiguriert, dass er direkt „out oft he box“ mit den Standard-Webseiten WordPress, BuddyPress, WooCommerce und Easy Digital Download funktioniert. Das bedeutet, dass Seiten wie das WordPress-Dashboard, WooCommerce-Warenkörbe, BuddyPress-Foren für eingeloggte Nutzer und mehr automatisch vom Seiten-Cache umgangen werden. Wenn du ein stark angepasstes WordPress-Setup verwendest, können weitere Anpassungen der Seitencache-Einstellungen erforderlich sein.
Standardmäßig ist das Seiten-Caching auf Kinsta-Staging-Seiten deaktiviert. In einigen Fällen ist es für Testzwecke nützlich, das Seiten-Caching beim Staging zu aktivieren. Das Seiten-Caching für Staging-Webseiten kann im MyKinsta-Dashboard aktiviert werden.
CDN-Cache
CDN-Caching speichert Webseiten-Dateien (wie JavaScript, CSS und Mediendateien) in einem Content-Delivery-Netzwerk für eine schnellere Bereitstellung an Benutzer, die geografisch vom Standort des Hostservers entfernt sind. Wenn jemand versucht, eine Webseite zu erreichen, werden diese Dateien vom CDN geliefert, anstatt von dem Server, der die Webseite tatsächlich hostet. Lies mehr darüber, warum Du ein CDN verwenden solltest.
Ein Content Delivery Network (CDN) bietet zwei wesentliche Vorteile:
- Es reduziert die Serverressourcen, die für das Laden einer Webseite benötigt werden. Da das CDN die Arbeit erledigt, muss der Webserver das nicht.
- Es ermöglicht die Bereitstellung von Ressourcen von Standorten auf der ganzen Welt aus und beschleunigt die Leistung der Webseite für Benutzer, die geografisch von dem Server entfernt sind, der die Webseite hostet.
Es gibt zwei grundlegende Arten von CDNs: diejenigen, die einfach CDNs sind und solche, die ein CDN zusammen mit Sicherheitsfunktionen anbieten. Einige gängige Beispiele von jedem sind:
- Standard-CDN: Stackpath, CloudFront.
- CDN plus Sicherheit: Kinsta CDN (Cloudflare), Sucuri, Akamai (optional).
Die erste Art von CDN wird eingerichtet, indem CDN URLs erstellt werden, die für den Zugriff auf die Ressourcen der Webseite verwendet werden. Die genaue Art und Weise, wie dies aktiviert wird, variiert von einem CDN zum nächsten. Die Grundidee ist, dass URLs für statische Ressourcen in die CDN URL geändert werden, so dass die Ressourcen aus dem CDN gezogen werden. Ein Standard CDN cached normalerweise nur statische Dateien wie JS, CSS und Mediendateien.
Der zweite Typ von CDN dient als vollständiger Proxy-Server. Das bedeutet, dass jede Anfrage über die Server des Anbieters laufen muss, bevor sie auf den Servern von Kinsta ankommt. Dies wird durch die Nutzung der Nameserver des CDN-Anbieters ermöglicht, so dass der CDN-Anbieter die volle Kontrolle über die DNS der Webseite hat. Dadurch kann der Anbieter viele Dinge tun, die ein einfaches CDN nicht tun kann, wie z.B. Traffic von schlechten IPs herausfiltern, DoS/DDoS-Schutz bieten oder sogar einen kompletten Seiten-Cache auf dem CDN speichern. Unser Kinsta CDN wird von Cloudflare betrieben, einem Proxy Performance/Sicherheitsdienst.
Erweitertes CDN-Caching
Wenn Du ein Proxy-Server-CDN wie Cloudflare oder Sucuri verwendest, hast Du die Möglichkeit, einen kompletten Page-Cache auf dem CDN zu erstellen. Die Verwendung eines CDN wie Cloudflare oder Sucuri zum Zwischenspeichern von ganzseitigem HTML entlastet die gesamte Arbeit von unseren Servern und ist eine ausgezeichnete Lösung für eine Webseite, die einen massiven Anstieg des Traffic erwartet.
- Sucuri richtet einen Vollseiten-Cache ein, wenn die Cache-Ebene auf „Aktiviert“ gesetzt ist
- Cloudflare erfordert, dass Seitenregeln eingerichtet werden, damit der Vollseiten-Cache funktioniert. Die Regeln müssen eine Cache-Ebene „Cache Everything“ verwenden.
Kinsta Cache Response Header
Du kannst testen, ob Deine Seite vom Kinsta-Cache aus bedient wird, indem Du Dir den HTTP-Response-Header ansiehst. Kinsta fügt einen X-Kinsta-Cache
-header hinzu. Bei der ersten Anforderung einer nicht zwischengespeicherten Seite wird MISS
angezeigt, wie unten gezeigt.
Bei der zweiten Anforderung an dieselbe Seite zeigt der X-Kinsta-Cache
-Header Wert einen HIT
an, d.h. er wird vom Cache bedient.
Und wenn Du unseren Artikel über das Erreichen von 100/100 in Google PageSpeed Insights liest, wirst Du erfahren, dass Kinsta auch zusätzliche Optimierungen auf Serverebene hat, um die folgenden Warnungen, die Du vielleicht kennst, automatisch zu beheben:
- Komprimierung aktivieren (Kinsta hat Gzip bereits auf allen Servern aktiviert, es besteht keine Notwendigkeit zur Aktivierung).
- Verkürzung der Server-Antwortzeit (Kinsta ist bereits sehr schnell, bereits weit innerhalb der akzeptablen Parameter von Google ohne jegliche Optimierungen)
- Expires Header (keine Aktivierung erforderlich, da Kinsta die Caching Header auf Serverebene aktiviert hat)
Beispielsweise erhält unsere Testseite bei PageSpeed Insights eine 100/100 Punktzahl ohne aktiviertes Caching-Plugin. Der WordPress-Cache wird von Kinsta auf Serverebene verwaltet.
Kinsta-Cache Einstellungen
Du fragst Dich vielleicht, wie Du den Cache bei Kinsta steuern kannst. Es wird natürlich Zeiten geben, in denen Du den Cache löschen musst, besonders bei der Fehlersuche. Du hast ein paar einfache Optionen. Du kannst Deinen Cache sowohl über das MyKinsta Dashboard als auch über das Kinsta MU Plugin löschen.
WordPress Cache löschen
Um Deinen gesamten Seitencache manuell zu leeren, kannst Du dies über das MyKinsta Dashboard tun. Klicke einfach auf Deine Webseite, klicke auf Tools und klicke auf die Schaltfläche „Cache löschen“.
Standardmäßig ist das Caching in den WordPress-Staging-Umgebungen von Kinsta deaktiviert. Wenn du die Seiten-Cache-Funktionalität auf einer Staging-Seite testen möchtest, kannst du das Caching mit dem „Seiten Cache“-Tool im MyKinsta-Dashboard aktivieren. Nachdem das Caching für eine Staging-Umgebung aktiviert wurde, kann der Cache wie in der Live-Umgebung mit der Schaltfläche „Cache löschen“ gelöscht werden.
Kinsta MU Plugin
Die zweite Möglichkeit, die Du hast, ist die Verwendung des Kinsta MU Plugins. Was? Ja, technisch gesehen ist es ein Cache-Plugin, aber es ist kein typisches Caching-Plugin, da es auf Server-Ebene funktioniert.
Standardmäßig ist das Kinsta MU-Plugin auf jeder von uns gehosteten Webseite installiert und über die linke Seite Deines WordPress-Administrations-Dashboards verfügbar. Dies wird verwendet, um den Cache auf den entsprechenden Seiten Deiner Webseite intelligent zu löschen. Das Plugin ist erforderlich, um sicherzustellen, dass Deine Webseite in unserer Umgebung reibungslos funktioniert. Beachte auch, dass der Seiten-Cache standardmäßig jede Stunde abläuft.
Das Plugin ermöglicht es Dir auch, den Cache direkt aus Deiner WordPress-Administrationsleiste zu löschen. Dies wäre wahrscheinlich einer der Hauptgründe, es zu verwenden, da Du nicht in das MyKinsta-Dashboard wechseln musst. Du kannst es direkt von Deiner Webseite aus tun.
Es erlaubt Dir auch, benutzerdefinierte Caching-Regeln einzurichten. Je nachdem, wie die Konfiguration Deiner Webseite aussieht, können zusätzliche Caching-Regeln erforderlich sein. Du kannst benutzerdefinierte Pfade hinzufügen, um sie zu bereinigen, wenn Deine Webseite aktualisiert wird.
Du kannst dich auch an unser Support-Team wenden, wenn du eine bestimmte Seite oder URL aus dem Cache ausschließen möchtest.
Kinsta Staging-Umgebung
Standardmäßig ist in Staging-Umgebungen auf Kinsta das Seiten-Caching deaktiviert. Dies macht es einfach, deine WordPress-Seite zu entwickeln und zu debuggen, ohne den Cache nach jeder Bearbeitung manuell löschen zu müssen. In einigen Fällen willst du vielleicht das Seiten-Caching in einer Staging-Umgebung aktivieren, um einen genauen Geschwindigkeitstest für eine im Cache gespeicherte Seite durchzuführen, ohne deine Webseite live zu schalten.
Um das Seiten-Caching in einer Staging-Umgebung zu aktivieren, navigiere in MyKinsta zu Seiten > Werkzeuge und klicke auf die Schaltfläche „Cache aktivieren“. Wenn das Caching beim Staging aktiviert ist, kannst du die Schaltfläche „Cache leeren“ verwenden, um den Cache zu leeren.
Kinsta Cache Analyse
Du kannst einen tiefen Einblick in die Qualität des Caching Deiner WordPress-Seite in MyKinsta Analytics gewinnen. Der Cache-Component-Stack zeigt den Status jeder Anforderung an, unabhängig davon, ob es sich um einen HIT, BYPASS, MISS oder EXPIRED handelt. Du kannst die Daten nach den letzten 24 Stunden, 7 Tagen oder 30 Tagen filtern.
Das Cache-Component Diagramm gibt Dir einen schnellen Überblick über Dein Caching-Verhältnis. Je mehr Anfragen Du aus dem Cache bedienst, desto besser.
Im Abschnitt „Bypasses“ siehst Du, welche Requests nicht vom Cache bedient werden. Typischerweise können dies CRON-Jobs, Admin-Ajax-Anfragen, E-Commerce-Checkout-Seiten, Query-Strings und UTM-Parameter sein etc.
Caching von 404 Seiten
404 Seiten können sehr ressourcenintensiv sein. Viele WordPress-Seiten, insbesondere große Mitgliedsseiten, erzeugen mehr 404 Fehler, als du vielleicht denkst. Vielleicht hast du den Standort einer Seite geändert und vergessen, eine Umleitung hinzuzufügen, oder du hast einen falschen Link zu etwas, das du auf Social Media geteilt hast. Mit anderen Worten, es gibt viele Dinge, die einen Besucher dazu bringen, auf Ihrer 404-Seite zu landen. Diese Seiten neigen auch dazu, Abfragen zu haben, um alternative Suchergebnisse zu erhalten, die dann in die Datenbank gelangen.
Um eine bessere Leistung auf deiner WordPress-Seite zu gewährleisten, speichert Kinsta 404 Seiten für 15 Minuten. Der X-Kinsta-Cache
-Header zeigt einen HIT an, d.h. er wird vom Cache bedient. Wenn du eine Seite erstellst, die zuvor ein 404 war, wird der Cache sofort gelöscht.
Unser MyKinsta Analysetool kann dir helfen, die genaue Anzahl von 404 Fehlern auf deiner Website zu ermitteln.
Es ist jedoch wichtig zu klären, dass wir nicht alle 404 Anfragen zwischenspeichern. Es gibt zwei verschiedene Arten: die von PHP-Seiten, die auf deiner 404-Seite landen, und die von fehlenden Dateien oder Bildern, die nicht mehr existieren oder verschoben wurden. Wir speichern 404 Seiten, 404 Anfragen zu fehlenden Dateien und Bilder werden unterschiedlich behandelt.
Daher kannst du die „Top 404-Fehler“ verwenden, um besser zu bestimmen, wo und was diese verursacht werden.
Du kannst auch 404-Fehler in der Google Search Console überprüfen oder ein Drittanbieter-Plugin wie Redirection installieren, das 404-Fehler protokolliert. Denke jedoch daran, dass solche Plugins auch Auswirkungen auf die Performance haben. Es ist viel besser, sich auf ein Tool auf Serverebene zu verlassen.
Erstelle eine einfache 404-Vorlage, die eine weitere Abfrage der Datenbank nach Möglichkeit vermeidet.
POST Anfragen BYPASS Cache
Wir möchten, dass unsere Analyse- und Caching-Statistiken so genau wie möglich sind. Es ist wichtig, denn bei der Fehlerbehebung von Performance-Problemen schaue dir in der Regel dein gesamtes Cache-HIT-Verhältnis an, das du so hoch wie möglich halten möchtest. Daher werden POST-Anfragen in unser Reporting aufgenommen.
POST-Anfragen können, abgesehen von einigen hochspezialisierten Setups, nicht zwischengespeichert werden. Der X-Kinsta-Cache
-Header zeigt einen BYPASS
für diese Anfragen an. Diese sind nicht zu verwechseln mit Blog-Posts oder irgendeiner Art von WordPress-Post (die zwischenspeicherbar sind). Eine POST-Anfrage wird verwendet, um Daten an den Server zu senden. So werden beispielsweise die beim Absenden eines Webformulars gesendeten Daten im Request-Body des HTTP-Requests gespeichert.
Zusammenfassung
Hoffentlich verstehst Du jetzt ein wenig mehr über den WordPress-Cache und die vier verschiedenen Typen, denen Du hier bei Kinsta regelmäßig begegnen wirst: Bytecode-Caching, Objekt-Caching, Seiten-Caching und CDN-Caching.
Wenn Du es satt hast, Dich mit typischen WordPress Caching-Plugins zu beschäftigen und Du Dir einfach eine schnelle Seite direkt aus dem Stand wünschst, empfehlen wir Dir, Kinsta auszuprobieren! Es gibt einen Grund, warum wir von ReviewSignal den Status „Top Tier“ in der WordPress-Performance 4 Jahre in Folge erhalten haben. Und das liegt daran, dass unsere Server auf der Google Cloud Platform für blitzschnelle Ladezeiten optimiert sind. Du wirst von unserer Leistung nicht enttäuscht sein.
Schreibe einen Kommentar