Zum Hauptinhalt springen
SparkCore
Wissen

Redis Object Cache in WordPress: Was er bewirkt und wie Sie ihn einrichten

Ein Redis Object Cache hält WordPress-Datenbankdaten zwischen Anfragen vor, sodass Dashboard, Warenkorb und angemeldete Nutzerinnen und Nutzer weniger auf die Datenbank warten. Für anonyme Besucher, die bereits eine Seite aus dem Seiten-Cache erhalten, bringt er wenig. Dieser Ratgeber erklärt, was ein Object Cache leistet, wann WordPress selbst einen empfiehlt, wie Sie Redis einrichten, was Sie ohne Redis nutzen können und wie Spark Speed, das von uns entwickelte Cache-Plugin, damit umgeht.
Kurz gesagt
  • Ein Object Cache beschleunigt alles, was durch WordPress laufen muss: Dashboard, Warenkorb, Kasse, angemeldete Nutzer
  • Neben einem Seiten-Cache, nicht statt eines solchen
  • Das Plugin allein genügt nicht: Ihr Hoster muss einen Redis-Server bereitstellen
  • Ohne Redis sind Memcached, SQLite oder Dateien Alternativen

Was ein Object Cache bewirkt

WordPress hält die Ergebnisse von Datenbankabfragen während einer Anfrage im Speicher. Nach dieser Anfrage ist alles weg. Die WordPress-Dokumentation formuliert es so: Daten werden nicht dauerhaft über Seitenaufrufe hinweg gespeichert, es sei denn, Sie installieren ein Plugin für persistentes Caching. Ein solches Plugin legt die Datei object-cache.php in wp-content ab, und ab dann hält WordPress diese Daten in Redis, Memcached oder einem anderen Speicher, sodass die nächste Anfrage sie nicht erneut aus der Datenbank holen muss.

Object Cache oder Seiten-Cache: Was beschleunigt was

Ein Seiten-Cache speichert komplettes HTML und liefert es an anonyme Besucher aus, oft noch bevor WordPress überhaupt startet. Ein Object Cache kann dort wenig beitragen. Ein Object Cache hilft bei allem, was doch durch WordPress laufen muss: dem Dashboard, angemeldeten Nutzern, dem WooCommerce-Warenkorb, der Kasse und Mein Konto, Suchergebnissen und dem Neuaufbau des Seiten-Cache. Sie ergänzen sich; keiner ersetzt den anderen.

Brauchen Sie einen? Was WordPress selbst rät

WordPress hat im Website-Zustand eine Prüfung auf einen persistenten Object Cache. Im Quellcode von WordPress 7.0.2 empfiehlt diese Prüfung ihn nur bei einer Multisite oder sobald einer dieser Schwellenwerte überschritten ist. Eine kleine Visitenkarten-Website mit gutem Seiten-Cache bleibt meist darunter.
  • mehr als 500 automatisch geladene Optionen oder mehr als 100 kB davon
  • mehr als 1.000 Beiträge, Kommentare, Begriffe, Nutzer oder Optionen
  • die Schwellenwerte lassen sich mit dem Filter site_status_persistent_object_cache_thresholds

Redis mit dem Plugin Redis Object Cache einrichten

Das Plugin allein genügt nicht: Es muss ein Redis-Server laufen, den PHP erreichen kann. Bei Shared Hosting ist er oft nicht vorhanden, und dann können Sie selbst keinen starten. Fragen Sie Ihren Hoster, ob Redis verfügbar ist und unter welcher Adresse. In unserem Labor lief kein Redis-Server: Das Plugin meldete Connection refused und ließ die Schaltfläche Enable Object Cache deaktiviert. Das ist eine sichere Entscheidung des Plugins.
  1. Fragen Sie Ihren Hoster, ob Redis verfügbar ist und unter welcher Adresse oder welchem Socket
  2. Liegt Redis nicht unter 127.0.0.1:6379, setzen Sie WP_REDIS_HOST und WP_REDIS_PORT (und bei Bedarf WP_REDIS_PASSWORD) in wp-config.php
  3. Teilen Sie Redis mit anderen Websites, vergeben Sie jeder Website ein eigenes WP_REDIS_PREFIX oder eine eigene Datenbank: Sonst kann das Leeren die gesamte Redis-Datenbank treffen
  4. Installieren Sie Redis Object Cache, gehen Sie zu Einstellungen, Redis und klicken Sie auf Enable Object Cache
  5. Prüfen Sie mit wp redis status: Status sollte Connected zeigen
Einstellungen von Redis Object Cache, die zeigen, dass Redis nicht erreichbar ist, und eine deaktivierte Schaltfläche Enable Object Cache
Redis Object Cache 3.0.0 in unserem Labor ohne Redis-Server: Redis Unreachable, daher lässt es sich nicht aktivieren.

Alternativen: Memcached, APCu, SQLite und Dateien

Kein Redis? Dann gibt es andere Speicher. Memcached funktioniert ähnlich und gehört zu manchen Hosting-Tarifen. APCu hält Daten im eigenen Speicher von PHP, aber pro PHP-Prozess, sodass WP-CLI und Webserver die Änderungen des jeweils anderen nicht immer sehen. SQLite und Dateien brauchen keinen separaten Server und funktionieren deshalb auch bei einfachem Hosting.
PluginSpeicherAktive InstallationenBewertungLetztes UpdateMindestens PHP
Redis Object CacheBraucht einen Redis-Server; PhpRedis, Predis oder Relay500.000+4,5 (179)18. September 20267.2
Docket CacheSpeichert in PHP-Dateien, kein Redis nötig20.000+4,9 (50)15. Oktober 20267.2.5
SQLite Object CacheSpeichert in einer SQLite-Datei, kein Redis nötig10.000+5,0 (51)17. August 20265.6

Zahlen von wordpress.org, abgerufen am 16. Oktober 2026. Die Installationen sind die gerundeten Zahlen, die wordpress.org anzeigt.

So funktioniert der Object Cache in Spark Speed

Spark Speed, das von uns entwickelte Cache-Plugin, hat einen eigenen Object Cache als Schalter im Reiter Cache. Was Sie erwarten können, laut Code von Version 0.73.2 und unserer Dokumentation:
  • Spark wählt den Speicher, den der Server bietet, in dieser Reihenfolge: Redis, Memcached, SQLite und APCu. Eine konfigurierte WP_REDIS_HOST hat immer Vorrang.
  • Ohne WP_REDIS_HOST probiert Spark 127.0.0.1:6379 und dann die bekannten Redis-Socket-Pfade, die auf dem Server existieren.
  • Ist bereits die object-cache.php eines anderen Plugins vorhanden, überschreibt Spark sie nicht.
  • Ist Redis auf die Richtlinie noeviction gesetzt, warnt Spark: Redis lehnt dann neue Schreibvorgänge ab, wenn der Speicher voll ist, statt alte Schlüssel zu verdrängen.
  • Seiten-Cache und Object Cache haben jeweils eine eigene Schaltfläche zum Leeren; das Leeren des einen leert den anderen nicht.
  • Stellt Ihr Hoster bereits einen Object Cache bereit, lassen Sie den Schalter in Spark aus.

Redis abstimmen

Zwei Einstellungen entscheiden, ob Redis als Cache gut weiterarbeitet. maxmemory gibt Redis ein Speicherlimit. maxmemory-policy bestimmt, was bei Erreichen dieses Limits geschieht. Die Redis-Dokumentation nennt allkeys-lru einen guten Standard für einen Cache: Die am längsten nicht genutzten Schlüssel werden verdrängt. Mit noeviction gibt Redis bei Schreibvorgängen einen Fehler zurück, sobald es voll ist. Bei Shared oder Managed Hosting legt der Hoster dies fest; fragen Sie im Zweifel nach.

Prüfen und leeren

Ob WordPress einen persistenten Object Cache nutzt, sehen Sie im Website-Zustand und mit WP-CLI. Leeren Sie nach einer Änderung direkt in der Datenbank, zum Beispiel einem Import oder einer SQL-Abfrage, den Object Cache, sonst zeigt WordPress weiter den alten Wert.
  • wp cache flush leert den Object Cache (funktioniert mit jedem Object-Cache-Plugin)
  • wp redis status zeigt Status, Client und Drop-in von Redis Object Cache
  • wp spark-speed flush-object-cache leert den Spark-Speed-Object-Cache
  • In Redis selbst zeigen keyspace_hits und keyspace_misses aus INFO stats an, wie oft der Cache trifft
Aktivieren Sie immer nur einen Object Cache. Zwei Plugins, die beide object-cache.php verwalten wollen, kommen sich in die Quere.
Spark Speed vereint Seiten-Cache und Object Cache und wählt den Speicher, den Ihr Server bietet.

Häufige Fragen

Vor allem die Teile, die nicht aus dem Seiten-Cache kommen: Dashboard, Warenkorb und Kasse, angemeldete Nutzer und Suchergebnisse. Seiten, die bereits aus dem Seiten-Cache kommen, werden kaum schneller.

Beide halten Object-Cache-Daten im Speicher eines separaten Servers. Für WordPress erfüllen sie dieselbe Aufgabe; welchen Sie wählen, hängt vor allem davon ab, was Ihr Hoster anbietet.

Nur, wenn Ihr Hoster Redis anbietet. Bei Shared Hosting können Sie in der Regel nicht selbst einen Redis-Server starten. Ohne Redis können Sie einen Object Cache auf SQLite oder in Dateien nutzen.

Mit wp cache flush über WP-CLI oder mit der Schaltfläche Ihres Object-Cache-Plugins. Tun Sie das nach Änderungen direkt in der Datenbank.