Redis in Shopware 6: Vollständiger Konfigurationsleitfaden für schnelleren E-Commerce
Wenn Ihr Shopware 6 Shop aufgrund des Datenverkehrs auf Datenbankengpässe stößt, ist Redis die Lösung. Keine Teillösung, sondern eine grundlegende Lösung. Dieser Leitfaden überspringt die Grundlagen und geht direkt auf das Wesentliche ein: Redis richtig konfigurieren, Daten nach Typ trennen und die häufigen Fehler vermeiden, die die Leistung in der Produktion beeinträchtigen.
Warum Redis über den Standard-Cache von Shopware?
Shopware 6 wird standardmäßig mit einem dateibasierten Cache ausgeliefert. Bei wenig Verkehr funktioniert es gut. Sobald Sie Produktkatalog-Renderings, Sitzungsladevorgänge und Warenkorbvorgänge gleichzeitig vorantreiben, wird dateibasierter E/A zu Ihrem Engpass.
Redis speichert alles im Speicher, weshalb es in der Moderne eine entscheidende Rolle spielt Shopware 6 Performance-Optimierung. Ein Cache-Lesevorgang, der normalerweise dauert 20 bis 80 Millisekunden von der Festplatte sinkt auf unter 1 Millisekunde, wenn sie über Redis bereitgestellt wird. Bei einem geschäftigen Geschäft verstärkt sich dieser Unterschied bei jeder Anfrage und verbessert direkt die Seitenladegeschwindigkeit, die Reaktionsfähigkeit beim Bezahlvorgang und das allgemeine Benutzererlebnis.
Für jeden Shopware Entwicklungsunternehmen oder Shopware Development Agency, dies verbessert direkt die Leistung bei hohem Traffic, Werbeaktionen und B2B-Komplexität.
Redis ermöglicht auch die Kontrolle über das Caching. Mit den richtigen Shopware Development Services und Shopware Development Solutions können Sie entscheiden, was gespeichert wird, wie lange es bleibt und wie der Speicher verwaltet wird.
Deshalb viele Shopware 6 Entwickler Verwenden Sie Redis anstelle des Standard-Dateicaches, da es eine bessere Kontrolle bietet und das Wachstum zuverlässiger bewältigt.
Der Teil, den die meisten Leitfäden übersehen: Datentyptrennung
Die meisten Redis Tutorials für Shopware behandeln alle Daten gleich. Das ist falsch und wird letztendlich zu echten Problemen führen.
Shopware Stores 3 grundlegend unterschiedliche Arten von Daten in Redis, und jeder benötigt eine andere Handhabung:
1) Ephemerer Cache (HTTP-Cache, Objekt-Cache)
Diese Daten können schnell wiederhergestellt werden. Wenn Redis es entfernt, entsteht kein Schaden. Stellen Sie Ihre Räumungsrichtlinie auf volatile-lru ein und lassen Sie sich darüber nicht den Schlaf brechen.
2) Sitzungsdaten
Dazu gehören Benutzeranmeldungen, laufende Warenkörbe und Checkout-Sitzungen.
Wenn diese Daten verschwinden, scheiden Nutzer aus und es gehen Umsätze verloren.
3) Critical data — carts, lock stores, number ranges
- Daten, die nicht verloren gehen dürfen (z. B. Warenkörbe, Sperrspeicher, inkrementelle Daten).
- Beharrlichkeit ist gefragt; Daten sollten niemals gelöscht werden, es sei denn, sie sind abgelaufen.
- Empfohlene Löschrichtlinie: volatile-lru (entfernt nur abgelaufene Daten).
So integrieren Sie Redis in Shopware 6 Schritt-für-Schritt-Anleitung
Schritt 1: Installieren Sie Redis auf Ihrem Server
Stellen Sie sicher, dass Redis auf Ihrem Shopware Server installiert ist. Wenn nicht, installieren Sie es mit:
sudo apt update
sudo apt install redis-server
sudo systemctl start redis
sudo systemctl enable redis
##Verify:
redis-cli ping
<--Expected output--->
PONG
Schritt 2: Redis in Shopware 6 konfigurieren
Stellen Sie sicher, dass Redis auf Ihrem Shopware Server installiert ist. Wenn nicht, installieren Sie es mit:
Bearbeiten Sie die .env-Datei, um Redis für das Caching zu aktivieren:
REDIS_HOST=127.0.0.1
REDIS_PORT=6379
SHOPWARE_HTTP_CACHE_ENABLED=1
SHOPWARE_HTTP_DEFAULT_TTL=7200
Schritt 3: Aktivieren Sie Redis für Caching
Stellen Sie sicher, dass Redis auf Ihrem Shopware Server installiert ist. Wenn nicht, installieren Sie es mit:
Ändern config/packages/shopware.yaml So legen Sie Redis als Cache-Handler fest:
shopware:
cache:
enabled: true
type: redis
redis:
host: 'redis://127.0.0.1:6379'
Schritt 4: Redis für die Sitzungsspeicherung verwenden (optional)
Um Benutzersitzungen in Redis zu speichern, aktualisieren Sie .env:
SHOPWARE_SESSION_STORAGE="redis"
Dies verbessert die Sitzungsverwaltung und beschleunigt die Benutzeranmeldung.
Schritt 5: Verwenden Sie separate Redis Instanzen für verschiedene Datentypen
Ab Shopware v6.6.8.0 können mehrere Redis Verbindungen konfiguriert werden, um unterschiedliche Workloads zu optimieren.
Bearbeiten Sie config/packages/shopware.yaml:
yaml
CopyEdit
shopware:
redis:
connections:
cache:
dsn: 'redis://127.0.0.1:6379/0' # Ephemeral cache
session:
dsn: 'redis://127.0.0.1:6379/1' # User session data
critical:
dsn: 'redis://127.0.0.1:637
Schritt 6: Verwenden Sie Verbindungspooling für hohen Datenverkehr
Um den Aufwand für den Aufbau neuer Verbindungen für jede Anfrage zu reduzieren, aktivieren Sie dauerhafte Verbindungen:
yaml
CopyEdit
shopware:
redis:
connections:
cache:
dsn: 'redis://127.0.0.1:6379/0' # Ephemeral cache
session:
dsn: 'redis://127.0.0.1:6379/1' # User session data
critical:
dsn: 'redis://127.0.0.1:637
Schritt 7: Cache leeren und aufwärmen
Aktualisieren Sie nach der Konfiguration von Redis den Cache mit:
bash
bin/console cache:clear
bin/console cache:warmup
redis-cli monitor
##Check if Redis is being used:
bash
redis-cli monitor
Schritt 8: Dienste neu starten
Starten Sie sowohl Shopware als auch Redis neu:
sudo systemctl restart redis-server
php bin/console cache:clear
Überprüfung der Redis Integration
Um zu bestätigen, dass Redis Daten zwischenspeichert, führen Sie Folgendes aus:
redis-cli --scan --pattern "*"
Häufige Fehler, die Sie beim Hinzufügen von Redis zu Shopware 6 vermeiden sollten
Single Redis instance for everything fine for development, dangerous in production. Session data sitting next to volatile cache means it can be evicted under memory pressure.
Falsche Räumungspolitik — Using noeviction on a cache instance will cause Redis to reject writes when memory is full, breaking your storefront. Use the correct policy for each data type as outlined above.
Keine Persistenz auf Sitzungs-/Warenkorbinstanzen — An unplanned Redis restart without AOF or RDB snapshots wipes sessions and carts. Set this up before go-live, not after.
Ignorieren von Speichergrenzen — Set maxmemory explicitly in your Redis config. Without it, Redis will consume all available RAM before eviction kicks in.
Was ist mit Shopware Message Queue + Redis?
Single Redis instance for everything fine for development, dangerous in production. Session data sitting next to volatile cache means it can be evicted under memory pressure.
Redis kann als Backend für den Warteschlangentransport dienen und diesen vollständig von MySQL entlasten. Konfigurieren Sie es in config/packages/messenger.yaml:
framework:
messenger:
transports:
async:
dsn: 'redis://127.0.0.1:6379/3'
Suchen Sie einen Shopware 6 Entwickler?
Ihr Shopware Shop sollte schnell, skalierbar und zuverlässig sein. Lassen Sie Ihr Setup von Experten überprüfen und Ihnen genau zeigen, wo Sie Leistungseinbußen hinnehmen.
Warum sollten Sie iCreative Technologies als Ihren Shopware 6 Entwicklungsservice-Partner wählen?
iCreativeTechnologies verfügt über ein Team von zertifizierte Shopware 6 Entwickler Mit Sitz in den USA und Indien arbeiten wir über Zeitzonen hinweg, damit Ihre Projekte ohne Verzögerungen umgesetzt werden. Ganz gleich, ob Sie einen engagierten Entwickler für ein langfristiges Engagement, einen Shopware Entwicklungspartner für den Aufbau von Grund auf oder einen Experten für die Prüfung und Reparatur eines bestehenden Shops benötigen – das Team ist darauf vorbereitet.
Was macht iCreative Technologies zu einer vertrauenswürdigen Shopware 6 Agentur?
- Über 10 Jahre praktische Shopware Entwicklungsexpertise
- Umfangreiches Fachwissen in Shopware Support, Erweiterungen, Apps und Theme-Anpassung
- Hochwertige Arbeit zu angemessenen Shopware Entwicklungskosten
- Durchgängige Shopware Entwicklungskompetenz
- Offizielle Shopware Partneragentur
- 24×7 Shopware support for your website
FAQs – Shopware 6 Redis
Redis wird als In-Memory-Caching-Schicht verwendet, um Datenbankabfragen zu reduzieren und die Speicherleistung zu beschleunigen. In Shopware 6 verwaltet es Cache, Sitzungen und kritische Laufzeitdaten, um Ladezeiten und Skalierbarkeit zu verbessern.
Ja, Shopware 6 verfügt über integrierte Unterstützung für Redis als Cache- und Session-Backend. Es kann über .env und shopware.yaml ohne Drittanbieter-Plugins konfiguriert werden.
A properly configured Redis setup can reduce database load by 30–70% and significantly improve page speed, especially for product listings, cart operations, and checkout processes.
Redis sollte Folgendes speichern:
- Cache (temporäre Daten)
- Benutzersitzungen
- Warenkorb- und Transaktionsdaten
Jeder Typ sollte isoliert werden, um Leistungskonflikte zu vermeiden.
Die grundlegende Einrichtung ist einfach, aber eine produktionstaugliche Optimierung erfordert Fachwissen. Ein professionelles Shopware Entwicklungsunternehmen oder eine Shopware Entwicklungsagentur stellt sicher, dass Redis korrekt in Ihre vollständige Leistungsarchitektur integriert ist.