Zu Content springen
Shopware

Shopware 6 Performance-Boost: Redis Integration leicht gemacht

von Tim Kelle

Shopware 6 Performance-Boost: Redis Integration leicht gemacht
12:43

Es ist Montagmorgen, 8:47 Uhr. Der Traffic in deinem Shopware-Shop steigt kontinuierlich an, doch die Ladezeiten werden immer länger. Kunden brechen ihre Einkäufe ab, die Conversion-Rate sinkt, und du fragst dich, was du dagegen tun kannst. Die Antwort liegt oft in einer cleveren Cache-Optimierung: Redis Shopware Integration kann deine Performance-Probleme lösen und deinen Shop auf das nächste Level bringen.

Illustration eines Computers mit einer Datenbank und einem Geschwindigkeitstacho, um die Leistungsfähigkeit von Redis für Shopware zu verdeutlichen.

In diesem Artikel zeigen wir dir, wie du Redis erfolgreich in deinem Shopware-System implementierst, welche konkreten Vorteile das bringt und worauf du bei der Konfiguration achten musst. Du erfährst nicht nur die technischen Details, sondern auch, wie sich diese Optimierung direkt auf dein Geschäftsergebnis auswirkt. Eine professionelle Shopware Entwicklung ist hierbei der Schlüssel zum Erfolg.

Was ist Redis und warum braucht dein Shopware-Shop diese Technologie?

Redis (Remote Dictionary Server) ist eine In-Memory-Datenbank, die Daten direkt im Arbeitsspeicher (RAM) statt auf der Festplatte speichert. Für Redis Shopware 6 Installationen bedeutet das eine drastische Beschleunigung aller Cache- und Session-Operationen.

Während traditionelle Datenbankzugriffe auf die Festplatte mehrere Millisekunden benötigen, liefert Redis Daten in Mikrosekunden aus dem RAM. Diese Geschwindigkeitssteigerung macht sich besonders bei häufig abgerufenen Inhalten bemerkbar – genau das, was in einem Online-Shop ständig passiert. Eine gezielte Performance-Optimierung ist daher für moderne E-Commerce-Systeme unerlässlich.

Die Performance-Herausforderungen von Shopware ohne Redis

Shopware speichert standardmäßig Sessions und Cache-Daten in der MySQL-Datenbank oder als Dateien auf der Festplatte. Bei steigenden Besucherzahlen führt das zu folgenden Problemen:

  • Datenbanküberlastung: Jeder Seitenaufruf erzeugt multiple Datenbankzugriffe
  • Langsamere Session-Verwaltung: Shopware Session Daten werden ineffizient gespeichert
  • Cache-Bottlenecks: Häufig abgerufene Produktdaten werden immer wieder neu geladen
  • Schlechte Skalierbarkeit: Performance bricht bei höherem Traffic ein

Redis Shopware Integration: Diese konkreten Vorteile erwarten dich

1. Dramatische Geschwindigkeitssteigerung

Die Integration von Redis Shopware Cache kann die Ladezeiten um 50-80% reduzieren. Produktseiten, die vorher 3 Sekunden zum Laden benötigten, werden in unter einer Sekunde ausgeliefert.

2. Effiziente Session-Verwaltung

Mit Shopware 6 Session Optimierung über Redis werden Warenkörbe, Merkzettel und Benutzereinstellungen blitzschnell geladen. Besonders bei parallelen Benutzern zeigt sich hier der Vorteil.

3. Reduzierte Serverlast

Redis entlastet deine Hauptdatenbank erheblich. Statt hunderte von Cache-Abfragen pro Minute zu verarbeiten, kann sich MySQL auf die wichtigen Geschäftsdaten konzentrieren. Die technische Umsetzung spielt hierbei eine zentrale Rolle.

4. Automatische Datenbereinigung

Redis löscht abgelaufene Sessions und Cache-Einträge automatisch. Du musst dich nicht mehr um die manuelle Bereinigung kümmern.

5. Bessere Skalierbarkeit

Auch bei Traffic-Spitzen durch Marketing-Aktionen oder saisonale Schwankungen bleibt die Performance stabil. Eine hohe technische Shop-Geschwindigkeit sichert dabei deine Umsätze ab.

Technische Voraussetzungen für Redis Shopware 6

Bevor du mit der Implementation beginnst, stelle sicher, dass dein System diese Anforderungen erfüllt:

Komponente Mindestanforderung Empfehlung
RAM für Redis 2 GB 4-8 GB
Redis Version 4.0+ 6.0+
PHP Version 7.4+ 8.1+
Shopware Version 6.0+ 6.4+

Speicherplanung für Redis

Eine realistische Einschätzung des benötigten Speichers ist entscheidend:

  • Kleiner Shop (bis 1.000 Produkte): 1-2 GB
  • Mittlerer Shop (bis 10.000 Produkte): 2-4 GB
  • Großer Shop (über 10.000 Produkte): 4-8 GB

Plane mindestens 40% Puffer ein, damit Redis nie vollständig ausgelastet ist.

Schritt-für-Schritt: Redis Shopware Installation und Konfiguration

Schritt 1: Redis Installation

Auf den meisten Linux-Servern installierst du Redis über den Paketmanager:

 sudo apt update sudo apt install redis-server sudo systemctl enable redis-server sudo systemctl start redis-server 

Prüfe die Installation:

 redis-cli ping 

Die Antwort sollte "PONG" lauten.

Schritt 2: Redis-Grundkonfiguration

Bearbeite die Redis-Konfigurationsdatei /etc/redis/redis.conf:



Speicherlimit setzen
maxmemory 4gb

Eviction-Policy für Cache-Daten
maxmemory-policy volatile-lru

Persistenz für Sessions aktivieren
save 900 1 save 300 10 save 60 10000 

Schritt 3: Shopware 6 Session Konfiguration

Erstelle oder bearbeite die Datei config/packages/redis.yaml. Eine korrekte Shopware 6 Konfiguration ist für die Stabilität essenziell:

 parameters:     app.redis.cache.host: "%env(REDIS_CACHE_HOST)%"     app.redis.cache.port: "%env(int:REDIS_CACHE_PORT)%"     app.redis.cache.password: "%env(REDIS_CACHE_PASSWORD)%"     app.redis.cache.database: "%env(int:REDIS_CACHE_DATABASE)%"

services:     Redis:         class: Redis         calls:             - method: connect               arguments:                   - "%env(REDIS_SESSION_HOST)%"                   - "%env(int:REDIS_SESSION_PORT)%"             - method: auth               arguments:                   - "%env(REDIS_SESSION_PASSWORD)%"             - method: select               arguments:                   - "%env(int:REDIS_SESSION_DATABASE)%" 

Schritt 4: Framework-Konfiguration anpassen

In der Datei config/packages/framework.yaml konfigurierst du den Shopware Redis Cache:

 framework:     cache:         app: cache.adapter.redis         system: cache.adapter.redis         default_redis_provider: "redis://%app.redis.cache.password%@%app.redis.cache.host%:%app.redis.cache.port%/%app.redis.cache.database%"     session:         handler_id: Symfony\Component\HttpFoundation\Session\Storage\Handler\RedisSessionHandler 

Schritt 5: Umgebungsvariablen definieren

In deiner .env Datei ergänzt du:

 REDIS_CACHE_HOST="localhost" REDIS_CACHE_PORT="6379" REDIS_CACHE_PASSWORD="dein_redis_passwort" REDIS_CACHE_DATABASE="1"

REDIS_SESSION_HOST="localhost" REDIS_SESSION_PORT="6379" REDIS_SESSION_PASSWORD="dein_redis_passwort" REDIS_SESSION_DATABASE="0" 

Schritt 6: Cache leeren und Konfiguration aktivieren

 php bin/console cache:clear php bin/console theme:compile 

Shopware Session Timeout optimieren

Mit der Redis-Integration ändert sich die Session-Verwaltung. Die Shopware 6 Session Timeout Einstellungen werden nun von PHP und Redis gesteuert, nicht mehr direkt von Shopware.

Session-Lebensdauer anpassen

In der php.ini oder über .htaccess kannst du die Session-Dauer erhöhen:

 php_value session.gc_maxlifetime 14400 php_value session.cookie_lifetime 14400 

Diese Einstellung setzt die Shopware Session Timeout auf 4 Stunden – ideal für längere Shopping-Sessions.

Socket-Verbindungen für bessere Performance

Wenn Redis auf demselben Server läuft wie Shopware, nutze Datenbank Socket Shopware Verbindungen statt TCP:



In redis.yaml
services:     Redis:         class: Redis         calls:             - method: connect               arguments:                   - "/var/run/redis/redis.sock"                   - 0 

Socket-Verbindungen reduzieren den Overhead und verbessern die Performance zusätzlich um 10-15%.

Shopware Session Variable setzen mit Redis

Nach der Redis-Integration funktioniert das Shopware Session Variable setzen weiterhin über die gewohnten Methoden:

 // In Shopware 6 Plugin oder Custom Code $session = $request->getSession(); $session->set('custom_variable', $value); $customValue = $session->get('custom_variable'); 

Der Unterschied: Diese Daten werden jetzt blitzschnell in Redis gespeichert und abgerufen.

Ein Geschäftsmann analysiert seine Shopware-Website und nutzt Redis zur Optimierung der Performance und des Datenmanagements.

Monitoring und Optimierung deiner Redis-Installation

Wichtige Redis-Metriken überwachen



Speicherverbrauch prüfen
redis-cli info memory

Aktive Verbindungen anzeigen
redis-cli info clients

Hit-Rate des Caches
redis-cli info stats 

Performance-Optimierung

  1. Eviction-Policy anpassen: Je nach Anwendungsfall zwischen volatile-lru, allkeys-lru oder volatile-lfu wählen
  2. Speicher-Monitoring: Redis sollte nie über 80% Auslastung kommen
  3. Persistenz-Strategie: Für Sessions aktivieren, für Cache deaktivieren
  4. Separate Instanzen: Sessions und Cache auf verschiedene Redis-Instanzen aufteilen

Häufige Probleme und deren Lösungen

Problem: Sessions gehen verloren

Lösung: Aktiviere Redis-Persistenz für die Session-Datenbank:



In redis.conf für Session-Instanz
save 60 1 appendonly yes 

Problem: Cache wird nicht geleert

Lösung: Prüfe die Datenbankzuweisungen und stelle sicher, dass Cache und Sessions verschiedene Redis-Datenbanken nutzen.

Problem: Hoher Speicherverbrauch

Lösung: Konfiguriere aggressive Eviction-Policies und überwache den maxmemory-Wert:

 redis-cli config set maxmemory-policy allkeys-lru 

Best Practices für Redis Shopware in der Praxis

1. Separate Redis-Instanzen verwenden

Nutze mindestens zwei getrennte Redis-Instanzen:

  • Instanz 1: Sessions (mit Persistenz)
  • Instanz 2: Cache (ohne Persistenz, aggressive Eviction)

2. Regelmäßiges Backup der Session-Daten



Tägliches Session-Backup
redis-cli --rdb /backup/redis-sessions-$(date +%Y%m%d).rdb 

3. Performance-Testing durchführen

Teste die Performance vor und nach der Redis-Integration:

  • Ladezeiten: Mit Tools wie GTmetrix oder PageSpeed Insights
  • Serverlast: CPU und Memory-Usage überwachen
  • Datenbankperformance: Anzahl der MySQL-Queries prüfen

Die Geschäftsauswirkungen von Redis Shopware Optimierung

Eine schnellere Seite führt unweigerlich zu einer besseren Conversion-Optimierung, da Kunden weniger Reibungsverluste im Kaufprozess erleben.

Messbare Verbesserungen

Unsere Erfahrungen zeigen typische Verbesserungen nach der Redis Shopware 6 Implementation:

Metrik Vor Redis Nach Redis Verbesserung
Ladezeit Produktseite 2.8s 1.2s -57%
Ladezeit Kategorieseite 3.5s 1.5s -57%
Checkout-Performance 4.2s 2.1s -50%
Serverlast (CPU) 75% 45% -40%
Datenbankabfragen 150/Seite 80/Seite -47%

ROI der Redis-Implementation

Die Investition in Redis Shopware Optimierung zahlt sich schnell aus:

  • Höhere Conversion-Rate: Jede Sekunde schnellere Ladezeit erhöht die Conversion um 7%
  • Besseres SEO-Ranking: Google bevorzugt schnelle Websites – nutzen Sie daher technisches SEO als Hebel.
  • Geringere Serverkosten: Weniger Ressourcenverbrauch bei gleichem Traffic
  • Verbesserte User Experience: Zufriedenere Kunden, weniger Abbrüche

Sicherheitsaspekte bei der Redis-Konfiguration

Redis absichern



Passwort-Schutz aktivieren
requirepass dein_starkes_passwort

Nur lokale Verbindungen erlauben
bind 127.0.0.1

Gefährliche Befehle deaktivieren
rename-command FLUSHDB "" rename-command FLUSHALL "" 

Firewall-Konfiguration

Stelle sicher, dass Redis-Ports nicht öffentlich zugänglich sind:



UFW Firewall-Regel
sudo ufw deny 6379 

Zukunftssichere Redis Shopware Architektur

Skalierung für wachsende Shops

Bei stark wachsenden Shops plane frühzeitig die Skalierung:

  1. Redis Cluster: Für sehr große Datenmengen
  2. Master-Slave-Setup: Für Hochverfügbarkeit
  3. Geografische Verteilung: Redis-Instanzen in verschiedenen Rechenzentren

Integration mit CDN und Load Balancern

Redis lässt sich optimal mit anderen Performance-Technologien kombinieren:

  • CDN: Für statische Inhalte
  • Load Balancer: Für Traffic-Verteilung
  • Redis: Für dynamische Cache- und Session-Daten

Performance-Monitoring im laufenden Betrieb

Wichtige KPIs überwachen

Richte ein kontinuierliches Monitoring ein:



Redis-Stats in Monitoring-System einbinden
redis-cli info stats | grep keyspace redis-cli info memory | grep used_memory_human redis-cli info replication | grep master_last_io 

Alarme konfigurieren

Setze Schwellenwerte für kritische Metriken:

  • Redis-Speicherverbrauch > 80%
  • Hit-Rate < 90%
  • Verbindungsfehler > 1%

Von der Theorie zur Praxis: Dein Weg zur optimalen Shop-Performance

Die Implementation von Redis Shopware ist mehr als nur eine technische Optimierung – sie ist eine Investition in die Zukunft deines Online-Geschäfts. Mit den richtigen Konfigurationen und einem durchdachten Setup kannst du nicht nur die Performance drastisch verbessern, sondern auch die Grundlage für nachhaltiges Wachstum schaffen.

Die Kombination aus Shopware 6 Session Optimierung, intelligentem Shopware Redis Cache und proaktivem Monitoring sorgt dafür, dass dein Shop auch bei steigenden Anforderungen performant bleibt. Durch die Entlastung der Hauptdatenbank und die Verlagerung häufiger Zugriffe in den schnellen Redis-Speicher schaffst du nicht nur bessere Nutzererfahrungen, sondern auch die technische Basis für erfolgreiche Marketing-Kampagnen und Traffic-Spitzen.

Starte mit einer sauberen Installation, überwache kontinuierlich die Performance und passe die Konfiguration an deine spezifischen Anforderungen an. So wird Redis Shopware zu einem mächtigen Werkzeug, das deinen Online-Shop nachhaltig erfolgreicher macht.

Diesen Beitrag teilen