Redis ist eine Open-Source-In-Memory-Datenbank, die Daten als Schlüssel-Wert-Paare direkt im Arbeitsspeicher ablegt und dadurch in Sekundenbruchteilen ausliefert. In Online-Shops wird Redis vor allem als Cache eingesetzt: Häufig benötigte Daten wie Sessions, Warenkörbe oder vorberechnete Seitenbausteine liegen im RAM statt in der Datenbank. Das Ergebnis sind kürzere Ladezeiten und eine spürbar entlastete Datenbank, gerade wenn viele Besucher gleichzeitig einkaufen.
In diesem Artikel erfahren Sie, wie Redis funktioniert, wofür Shopware, OXID, Pimcore und Magento es nutzen und wann sich ein eigener Redis-Server für Ihren Shop lohnt.
Inhaltsverzeichnis
- Was ist Redis?
- Was ist ein Redis Cache?
- Wie funktioniert Redis Caching?
- Warum ist Redis schneller als eine klassische Datenbank?
- Ist Redis SQL oder NoSQL?
- Wofür nutzen Online-Shops Redis?
- Welche Shopsysteme unterstützen Redis?
- Wann lohnt sich Redis für Ihren Shop?
- Wo Redis an Grenzen stößt
- Redis selbst betreiben oder managed nutzen?
- Redis und Valkey: Was steckt hinter der Lizenzdebatte?
- Redis FlexServer von profihost
Was ist Redis?
Redis steht für „Remote Dictionary Server“. Es handelt sich um einen Key-Value-Store: Jeder Datensatz besteht aus einem eindeutigen Schlüssel (Key) und einem zugehörigen Wert (Value). Ein Schlüssel könnte etwa „session:48213“ lauten, der Wert enthält die Sitzungsdaten eines Shopbesuchers.
Das Besondere: Redis hält alle Daten im Arbeitsspeicher (RAM) statt auf der Festplatte. Deshalb spricht man von einer In-Memory-Datenbank.
Die wichtigsten Eigenschaften im Überblick:
- In-Memory: Daten liegen im RAM und sind dadurch extrem schnell abrufbar.
- Key-Value-Prinzip: einfache, schnelle Zugriffe über eindeutige Schlüssel.
- Vielseitige Datentypen: neben einfachen Zeichenketten auch Listen, Sets, Hashes, sortierte Sets und Streams.
- Ablaufzeiten (TTL): Einträge können sich nach einer festgelegten Zeit automatisch löschen.
- Optionale Persistenz: Daten lassen sich bei Bedarf zusätzlich auf die Festplatte schreiben.
- Replikation: Daten können auf weitere Instanzen gespiegelt werden, um Ausfälle abzufangen.
Redis ist keine Alternative zu Ihrer Shop-Datenbank wie MySQL oder MariaDB, sondern eine Ergänzung. Die relationale Datenbank bleibt die verlässliche Quelle für Bestellungen, Kunden und Produkte. Redis übernimmt die Aufgaben, bei denen es auf Geschwindigkeit ankommt.
Was ist ein Redis Cache?
Ein Redis Cache ist ein Zwischenspeicher auf Basis von Redis, der häufig abgefragte Daten im Arbeitsspeicher vorhält. Statt bei jedem Seitenaufruf dieselbe Datenbankabfrage erneut auszuführen, liefert der Shop das bereits berechnete Ergebnis direkt aus dem Cache.
Ein Beispiel aus dem Shop-Alltag: Eine Kategorieseite mit 200 Produkten, Filtern und Preisen erfordert viele Datenbankabfragen. Rufen 500 Besucher diese Seite innerhalb weniger Minuten auf, müsste die Datenbank dieselbe Arbeit 500-mal erledigen. Mit einem Redis Cache wird das Ergebnis einmal berechnet, gespeichert und danach aus dem Arbeitsspeicher ausgeliefert.
Wie funktioniert Redis Caching?
Redis Caching folgt in den meisten Shops einem einfachen Muster, das als „Cache-Aside“ bezeichnet wird:
- Anfrage: Ein Besucher ruft eine Seite auf, der Shop benötigt bestimmte Daten.
- Cache-Prüfung: Der Shop fragt zuerst bei Redis nach, ob die Daten bereits vorliegen.
- Cache-Treffer (Hit): Sind die Daten vorhanden, werden sie direkt aus dem Arbeitsspeicher geliefert. Die Datenbank bleibt unberührt.
- Cache-Fehlschlag (Miss): Fehlen die Daten, holt der Shop sie aus der Datenbank.
- Speichern: Das Ergebnis wird in Redis abgelegt, meist mit einer Ablaufzeit. Die nächste Anfrage profitiert bereits davon.
Damit Kunden keine veralteten Preise oder Lagerbestände sehen, muss der Cache aktuell bleiben. Dafür gibt es zwei Mechanismen:
- Ablaufzeiten (TTL): Einträge verfallen automatisch nach einer festgelegten Zeit.
- Invalidierung: Ändert sich ein Produkt im Backend, löscht das Shopsystem gezielt die betroffenen Cache-Einträge.
Wird der Arbeitsspeicher knapp, entfernt Redis nach einer festgelegten Strategie (Eviction Policy) selten genutzte Einträge, um Platz für neue Daten zu schaffen.
Warum ist Redis schneller als eine klassische Datenbank?
Redis ist schneller, weil Zugriffe auf den Arbeitsspeicher um Größenordnungen schneller sind als Zugriffe auf Festplatten oder SSDs. Hinzu kommen weitere Faktoren:
- Kein Festplattenzugriff: Daten liegen im RAM und müssen nicht erst geladen werden.
- Einfache Abfragen: Ein Zugriff per Schlüssel ist deutlich weniger aufwendig als eine SQL-Abfrage mit mehreren Tabellen-Joins.
- Schlanke Architektur: Redis ist auf wenige, sehr schnelle Operationen optimiert.
- Vorberechnete Ergebnisse: Im Cache liegt bereits das fertige Ergebnis, nicht die Rohdaten.
Typische Redis-Operationen dauern deutlich unter einer Millisekunde. Für Ihren Shop bedeutet das: Die Server-Antwortzeit (Time to First Byte) sinkt, und die Datenbank hat mehr Kapazität für Aufgaben, die sie wirklich erledigen muss, etwa Bestellungen speichern.
Ist Redis SQL oder NoSQL?
Redis ist eine NoSQL-Datenbank. Es gibt keine Tabellen, keine festen Schemata und keine SQL-Abfragesprache. Stattdessen werden Daten über einfache Befehle wie SET und GET per Schlüssel geschrieben und gelesen.
Der Unterschied im direkten Vergleich:
- Datenmodell: MySQL arbeitet mit Tabellen und Beziehungen, Redis mit Schlüssel-Wert-Paaren und Datenstrukturen.
- Speicherort: MySQL speichert primär auf der Festplatte, Redis primär im Arbeitsspeicher.
- Stärke: MySQL eignet sich für komplexe Abfragen und dauerhafte Geschäftsdaten, Redis für schnelle, wiederkehrende Zugriffe.
- Rolle im Shop: MySQL ist das Fundament, Redis der Beschleuniger.
Wofür nutzen Online-Shops Redis?
Im E-Commerce übernimmt Redis typischerweise vier Aufgaben:
- Anwendungs-Cache
Vorberechnete Inhalte wie Kategorieseiten, Navigationsbäume, Konfigurationen oder Produktdaten werden zwischengespeichert. Das entlastet die Datenbank am stärksten. - Session-Speicher
Sitzungsdaten wie Login-Status oder Spracheinstellung liegen in Redis statt im Dateisystem. Das ist besonders wichtig, wenn mehrere Webserver im Einsatz sind: Alle greifen auf denselben Session-Speicher zu, und Kunden bleiben eingeloggt, egal welcher Server die Anfrage bearbeitet. - Warenkorb
Einige Shopsysteme, etwa Shopware 6, können Warenkörbe in Redis ablegen. Das beschleunigt den Checkout und entlastet die Datenbank bei vielen gleichzeitigen Besuchern. - Zähler, Sperren und Warteschlangen
Redis eignet sich für schnelle Zähler (zum Beispiel Bestellnummernkreise), für Sperren, die doppelte Verarbeitungen verhindern, und für Aufgaben-Warteschlangen im Hintergrund.
Ein Praxisbeispiel: Während einer Rabattaktion steigt der Traffic innerhalb weniger Minuten auf ein Vielfaches. Ohne Cache muss die Datenbank jede Kategorieseite und jede Session neu verarbeiten und wird zum Flaschenhals. Mit Redis werden wiederkehrende Anfragen aus dem Arbeitsspeicher bedient, und die Datenbank konzentriert sich auf Bestellungen.
Welche Shopsysteme unterstützen Redis?
Alle gängigen E-Commerce-Plattformen lassen sich mit Redis betreiben. Der Umfang der Integration unterscheidet sich:
- Shopware 6: Umfangreiche Unterstützung, unter anderem für App-Cache, Sessions, Warenkorb, Nummernkreise und Sperren. Die Einrichtung erfolgt über die Konfigurationsdateien des Shops.
- Magento / Adobe Commerce: Native Unterstützung für Seiten-Cache, Standard-Cache und Sessions.
- Pimcore: Nutzt Redis über das zugrunde liegende Symfony-Framework, insbesondere für Cache und Sessions.
- OXID eShop: Redis lässt sich über Erweiterungen und die Server-Konfiguration einbinden, vor allem für Sessions und Caching.
Wichtig: Redis beschleunigt Ihren Shop nur, wenn die Anbindung sauber konfiguriert ist. Welche Daten in Redis gehören, wie lange sie gültig bleiben und wie viel Arbeitsspeicher nötig ist, hängt vom Shop, vom Sortiment und vom Traffic ab.
Wann lohnt sich Redis für Ihren Shop?
Nicht jeder Shop braucht sofort einen eigenen Redis-Server. Diese Anzeichen sprechen dafür:
- Ihr Shop hat viel Traffic oder regelmäßige Lastspitzen, etwa durch Kampagnen, Newsletter oder saisonale Aktionen.
- Die Datenbank ist dauerhaft stark ausgelastet, obwohl Server-Ressourcen vorhanden sind.
- Kategorie- und Suchseiten laden spürbar langsam.
- Sie betreiben mehrere Webserver und benötigen einen gemeinsamen Session-Speicher.
- Ihr Sortiment ist groß, mit vielen Varianten, Filtern oder Preisregeln.
- Sie planen Wachstum und wollen die Architektur frühzeitig skalierbar aufstellen.
Wo Redis an Grenzen stößt
- Redis ersetzt keine Datenbank für dauerhafte Geschäftsdaten wie Bestellungen.
- Arbeitsspeicher ist teurer als Festplattenspeicher, die Cache-Größe muss sinnvoll geplant werden.
- Langsamer Programmcode wird durch Caching nur überdeckt. Ursachen lassen sich besser mit PHP-Profiling wie Tideways finden.
- Statische Dateien wie Bilder, CSS und JavaScript liefert ein CDN effizienter aus als Redis.
Redis ist damit ein Baustein im Zusammenspiel mehrerer Caching-Ebenen: Browser-Cache, CDN, Full-Page-Cache und Redis ergänzen sich gegenseitig.
Redis selbst betreiben oder managed nutzen?
Redis ist schnell installiert, aber der sichere und stabile Betrieb erfordert Know-how. Typische Aufgaben im Selbstbetrieb:
- Konfiguration von Speichergrenzen und Eviction Policy
- Absicherung durch Authentifizierung, Netzwerkfreigaben und Verschlüsselung
- Monitoring von Speicherverbrauch, Trefferquote und Latenz
- Updates und Sicherheitspatches
- Replikation und Failover für Hochverfügbarkeit
Besonders die Sicherheit wird häufig unterschätzt. Ein Redis-Server, der ohne Passwort aus dem Internet erreichbar ist, stellt ein erhebliches Risiko dar. Das Bundesamt für Sicherheit in der Informationstechnik (BSI) warnt seit Jahren vor offen erreichbaren Redis-Instanzen.
Bei einer Managed-Lösung übernimmt Ihr Hosting-Partner diese Aufgaben. Sie profitieren von der Geschwindigkeit, ohne sich um Betrieb, Absicherung und Wartung kümmern zu müssen, und Ihr Team kann sich auf den Shop konzentrieren.
Redis und Valkey: Was steckt hinter der Lizenzdebatte?
Wer sich mit Redis beschäftigt, stößt schnell auf den Namen Valkey. Der Hintergrund in Kürze: Im März 2024 wechselte Redis von der freizügigen BSD-Lizenz zu einem Source-Available-Modell. Als Reaktion gründete die Linux Foundation mit Valkey eine Abspaltung auf Basis der letzten BSD-lizenzierten Redis-Version. Seit Redis 8 (Mai 2025) ist Redis zusätzlich wieder unter der Open-Source-Lizenz AGPLv3 verfügbar.
Für die meisten Shopbetreiber ist das keine akute Frage: Wer Redis intern als Cache oder Session-Speicher einsetzt, ist von den Lizenzänderungen in der Regel nicht eingeschränkt. Beide Projekte sind weitgehend kompatibel und werden aktiv weiterentwickelt. Relevant wird das Thema vor allem für Anbieter, die Redis als Dienst betreiben, und für Unternehmen mit strengen Lizenzrichtlinien.
Redis FlexServer von profihost
Mit dem Redis FlexServer stellt profihost Ihnen einen eigenen, dedizierten Redis-Server zur Verfügung, der speziell auf die Anforderungen von Online-Shops ausgelegt ist.
Ihre Vorteile auf einen Blick:
- Eigener Server: Ihr Cache teilt keine Ressourcen und entlastet Ihre Datenbank spürbar.
- Hochverfügbar: Redundanz, Failover und Replikation halten den Service auch bei Störungen stabil.
- Skalierbar: Der Cache wächst mit Ihrem Traffic und wird an Ihren Shop angepasst.
- Persönlicher Support: Wir unterstützen Sie bei der Einbindung in Shopware, OXID, Pimcore oder Magento.
- Made in Germany: Betrieb in deutschen Rechenzentren mit AVV.Sie möchten wissen, ob Redis Caching die Performance Ihres Shops verbessert? Wir analysieren Ihre Ausgangslage und empfehlen Ihnen eine passende Lösung.