Vorwort
- August 1999: Als E-Commerce noch Neuland war
- 2010: Zurück zur Telekom
- Von den Pionieren zum Enterprise-Standard
- Warum dieses Buch?
- Für wen ist dieses Buch?
- Was Sie erwartet
- Nach 30 Tagen
Wie Sie mit diesem Buch arbeiten
- Die 30-Tage-Struktur
- Wie Sie vorgehen sollten
- Code-Beispiele
- Symbole und Konventionen
- Zielversionen
- Begleitende Ressourcen
- Feedback
Kapitel 1: Der Performance-Imperativ
- Einleitung
- Der Business Case für Performance
- Die versteckten Kosten langsamer Shops
- Core Web Vitals: Die neuen Spielregeln
- Die Performance-Pyramide
- Case Study: Enterprise E-Commerce — Peak Traffic überleben
- Checkliste: Vor dem Start
- Zusammenfassung
- Quellen
Kapitel 2: Performance-Audit — Wo stehen Sie?
- Einleitung
- Die 7 Performance-Dimensionen
- Tools für Ihr Audit
- Baseline festlegen: Das Audit-Protokoll
- Performance-Killer identifizieren
- Praxis: Ein Audit durchführen
- Beispiel-Audit: Ein Schweizer Fashion-Shop (fiktiv)
- Zusammenfassung
- Quellen
Kapitel 3: Core Web Vitals messen und optimieren
- Einleitung
- Die drei Core Web Vitals
- Schritt 1: Field Data erheben
- Schritt 2: Lab Data mit Chrome DevTools
- Schritt 3: Quick Wins umsetzen
- Schritt 4: Ergebnisse dokumentieren
- Fortgeschritten: Automatisierte Überwachung
- Checkliste Tag 1-2
- Zusammenfassung
- Quellen
Kapitel 4: Bildoptimierung
- Einleitung
- 4.1 Das Shopware-6-Thumbnail-System
- 4.2 Das sw_thumbnails-Tag
- 4.3 Lazy Loading richtig einsetzen
- 4.4 WebP und AVIF aktivieren
- 4.5 Thumbnail-Konfiguration optimieren
- 4.6 Bilder vor dem Upload optimieren
- 4.7 Performance-Messung
- Checkliste: Tag 3-4
- Fortgeschrittenen-Tipps
- Zusammenfassung
Kapitel 5: CSS und JavaScript optimieren
- Einleitung
- 5.1 Das Problem verstehen
- 5.2 CSS-Optimierung
- 5.3 JavaScript-Optimierung
- 5.4 Third-Party-Scripts kontrollieren
- 5.5 Theme-Kompilierung
- 5.6 Performance-Messung
- Checkliste: Tag 5-7
- Zusammenfassung
- Quellen
Kapitel 6: HTTP-Caching — Der schnellste Request ist der, der nicht passiert
- Einleitung
- 6.1 HTTP-Caching verstehen
- 6.2 Shopwares HTTP-Cache prüfen
- 6.3 Cache-Strategien für verschiedene Seitentypen
- 6.4 Stale-While-Revalidate: Wo es wirkt — und wo nicht
- 6.5 Varnish: Der Reverse Proxy vor Shopware
- 6.6 Edge Side Includes (ESI)
- 6.7 Cache-Invalidierung
- 6.8 Cache-Debugging
- 6.9 Performance-Messung
- Checkliste: Tag 8-10
- Zusammenfassung
- Quellen
Kapitel 7: Shopwares Application Cache meistern
- Einleitung
- 7.1 Cache-Architektur verstehen
- 7.2 Standard-Konfiguration verstehen
- 7.3 Redis als Cache-Backend
- 7.4 Sessions in Redis
- 7.5 Cache-Invalidierung
- 7.6 Cache-Warming
- 7.7 Troubleshooting
- 7.8 Performance-Messung
- Checkliste: Tag 11-12
- Zusammenfassung
- Quellen
Kapitel 8: Datenbank-Optimierung für Shopware
- Einleitung
- 8.1 Shopwares Datenbankarchitektur
- 8.2 MySQL/MariaDB Konfiguration
- 8.3 Slow Query Analyse
- 8.4 Index-Optimierung
- 8.5 Shopware DAL optimieren
- 8.6 Eigene Abfragen cachen
- 8.7 Shopware Storage-Optimierung
- 8.8 Datenbank-Wartung
- 8.9 Replikation und Read Replicas
- 8.10 Troubleshooting
- Checkliste: Tag 13-14
- Zusammenfassung
- Quellen
Kapitel 9: PHP-Performance optimieren
- Einleitung
- Ziel dieses Kapitels
- Voraussetzungen
- Schritt 1: PHP-Version prüfen und aktualisieren
- Schritt 2: OPcache konfigurieren
- Schritt 2.5: OPcache-Preloading aktivieren
- Schritt 3: JIT-Compiler evaluieren
- Schritt 4: PHP-FPM dimensionieren
- Schritt 5: php.ini für Shopware optimieren
- Schritt 6: Nginx mit PHP-FPM verbinden
- Schritt 7: Ausblick FrankenPHP
- Troubleshooting
- Checkliste: Tag 15-16
- Zusammenfassung
- Komplexeres Szenario?
- Quellen
Kapitel 10: Redis für Hochverfügbarkeit
- Einleitung
- Ziel dieses Kapitels
- Voraussetzungen
- Schritt 1: Das Problem verstehen — Single Point of Failure
- Schritt 2: Die richtige Lösung wählen — Sentinel vs. Cluster
- Schritt 3: Redis Sentinel Architektur aufbauen
ckquorumliefert bei Erfolg eine Statuszeile, die mitOKbeginnt. Prüfen Sie in Skripten nur auf diesesOKund nicht auf den Volltext — der Rest der Zeile ist kein zugesichertes Format.- Schritt 4: Failover testen
- Schritt 5: Shopware für Sentinel konfigurieren
- Schritt 6: Monitoring und Alerting einrichten
- Troubleshooting
- Checkliste: Tag 17-18
- Zusammenfassung
- Redis ist hochverfügbar. Im nächsten Kapitel (Kapitel 11) integrieren wir ein CDN: Statische Assets global verteilen, Latenzen reduzieren, und den Origin-Server entlasten. Denn die schnellste Antwort ist die, die gar nicht erst Ihren Server erreicht.
- Komplexeres Szenario?
- Quellen
Kapitel 11: CDN-Integration für globale Performance
- Einleitung
- Voraussetzungen
- 11.1 Wie ein CDN funktioniert
- 11.2 CDN-Anbieter im Vergleich
- 11.3 Cloudflare einrichten (Empfehlung)
- 11.4 Shopware für CDN konfigurieren
- 11.5 Cache-Header richtig setzen
- 11.6 Cache-Invalidierung
- 11.7 CDN für dynamische Inhalte
- 11.8 Bildoptimierung am Edge
- 11.9 Sicherheit: DDoS und WAF
- 11.10 Performance messen
- 11.11 Kosten optimieren
- 11.12 Troubleshooting
- Checkliste: Tag 19-21
- Zusammenfassung
- Quellen
Kapitel 12: Real User Monitoring (RUM)
- Einleitung
- Voraussetzungen
- 12.1 RUM vs. Synthetic Monitoring
- 12.2 Core Web Vitals
- 12.3 Die web-vitals Library
- 12.4 RUM-Daten sammeln
- 12.5 RUM-Daten auswerten
- 12.6 Alerting einrichten
- 12.7 RUM-Daten interpretieren
- 12.8 Praxis-Checkliste
- Zusammenfassung
- Quellen
Kapitel 13: Continuous Performance Testing
- Einleitung
- Voraussetzungen
- 13.1 Warum automatisierte Performance-Tests?
- 13.2 Lighthouse CI Setup
- 13.3 Performance-Budgets definieren
- 13.4 GitHub Actions Integration
- 13.5 GitLab CI Integration
- 13.6 LHCI Server für Trend-Analyse
- 13.7 Shopware-spezifische Tests
- 13.8 Alerting bei Regression
- 13.9 Praxis-Checkliste
- 13.10 Last-Testing: k6 und Locust
- Zusammenfassung
- Quellen
Kapitel 14: Performance-Kultur im Team etablieren
- Einleitung
- Voraussetzungen
- 1. Performance als geteilte Verantwortung
- 2. Performance-Champions etablieren
- 3. Code Reviews mit Performance-Fokus
- 4. Blameless Postmortems
- 5. Kontinuierliche Feedback-Kultur
- 6. Performance-Wissen teilen
- 7. Organisatorische Verankerung
- 8. Häufige Kulturprobleme und Lösungen
- Zusammenfassung: Woche 4, Tag 26-27
- Quellen
Kapitel 15: Der langfristige Performance-Plan
- Einleitung
- Voraussetzungen
- 1. Die 12-Monats-Roadmap
- 2. Quarterly OKRs für Performance
- 3. Technische Schulden managen
- 4. Performance-Budgets langfristig
- 5. Wartungsrhythmus etablieren
- 6. Skalierung der Performance-Arbeit
- 7. Erfolg messen: KPIs für das ganze Jahr
- 8. Häufige Langzeit-Fehler vermeiden
- Checkliste: Tag 28-30
- Zusammenfassung: Tag 28-30
- Quellen
Kapitel 16: Shopware 6 Themes - Performance-Optimierung
- Einleitung
- Voraussetzungen
- Companion-Repository
- Wo das Theme landet
- Die theme.json verstehen und optimieren
- SCSS-Variablen und Bootstrap-Overrides
- JavaScript-Optimierung
- Twig-Templates optimieren
- Critical CSS implementieren
- ESI für Header und Footer (Shopware 6.7)
- Build-Werkzeuge: Webpack, auch in 6.7
- Theme-Performance messen
- Checkliste: Theme-Performance
- Häufige Fehler vermeiden
- Zusammenfassung
- Quellen
Kapitel 17: Shopware 6 Plugins - Performance-Optimierung
- Einleitung
- Voraussetzungen
- Companion-Repository
- Die DAL performant nutzen
- Event-Subscriber optimieren
- Message Queue für Asynchrone Verarbeitung
- Cache-Invalidierung kontrollieren
- Entity-Indexer optimieren
- Plugin-Performance analysieren
- Performance-Checkliste für Plugins
- Zusammenfassung
- Quellen
Kapitel 18: Shopware 6 Elasticsearch
- Einleitung
- Companion-Repository
- 18.1 Elasticsearch vs. MySQL: Wann lohnt sich der Wechsel?
- 18.2 Elasticsearch vs. OpenSearch: Was nutzen?
- 18.3 Heap-Konfiguration: Die wichtigste Einstellung
- 18.4 Shopware ES-Konfiguration
- 18.5 Deutsche Sprache optimieren
- 18.6 Index-Mapping anpassen
- 18.7 Indexierung optimieren
- 18.8 Query-Optimierung
- 18.9 Monitoring & Troubleshooting
- 18.10 Migration: Von MySQL zu Elasticsearch
- 18.11 Advanced: Multi-Index-Strategien
- 18.12 Vector & Hybrid Search (ES 8.x Forward)
- Zusammenfassung
- Quellen
Kapitel 19: Mobile Performance
- Einleitung
- Companion-Repository
- 19.1 Die Mobile Performance-Lücke verstehen
- 19.2 Google Mobile-First Indexing
- 19.3 Mobile Core Web Vitals
- 19.4 Touch-Optimierung
- 19.5 Responsive Images
- 19.6 Service Worker & Offline-Performance
- 19.7 Mobile Checkout-Optimierung
- 19.8 PWA für Shopware
- 19.9 Network-Aware Loading
- 19.10 Mobile Performance Testing
- Zusammenfassung
- Quellen
Kapitel 20: A/B Testing & Performance-Experimente
- Ziel dieses Kapitels
- Voraussetzungen
- Schritt 1: Hypothese und Metrik festlegen
- Schritt 2: Stichprobengrösse berechnen
- Schritt 3: Besucher cache-sicher zuweisen
- Schritt 4: Cache-Key je Variante
- Schritt 5: Messwerte je Variante aus dem RUM
- Schritt 6: Einmal auswerten, am Ende
- Praxis-Beispiel: Erste Listing-Bilder sofort laden
- Häufige Fehler bei A/B-Tests in Shopware
- Troubleshooting
- Build vs. Buy: A/B-Test-Plattformen
- Zusammenfassung
- Quellen
Kapitel 21: Third-Party Scripts & Tag Management
- Ziel dieses Kapitels
- Voraussetzungen
- Schritt 1: Third-Party Scripts auditieren
- Schritt 2: Google Tag Manager nach der Einwilligung laden
- Schritt 3: GTM-Container aufräumen
- Schritt 4: Consent-Mode und eigene Skripte
- Schritt 5: Partytown für Web Worker nutzen
- Schritt 6: Widgets nur auf den Seiten laden, die sie brauchen
- Schritt 7: Budget in der CI überwachen
- Schritt 8: Payment-Provider Scripts prüfen
- Schritt 9: Server-Side Tagging mit GTM
- Troubleshooting
- Checkliste: Third-Party-Audit
- Zusammenfassung
- Quellen
Kapitel 22: Die 20 häufigsten Performance-Probleme
- Übersicht
- Problem 1: Langsame Datenbankabfragen
- Problem 2: HTTP-Cache nicht aktiv
- Problem 3: Zu grosse JavaScript-Bundles
- Problem 4: Unoptimierte Bilder
- Problem 5: Fehlende Preconnects
- Problem 6: Render-Blocking CSS
- Problem 7: N+1 Query Problem
- Problem 8: Session-Lock Blocking
- Problem 9: Grosse Warenkorb-Berechnungen
- Problem 10: Zu viele Plugins
- Problem 11: Elasticsearch nicht konfiguriert
- Problem 12: OPcache nicht aktiviert
- Problem 13: Debug-Modus in Produktion
- Problem 14: Fehlende Gzip-Kompression
- Problem 15: Hintergrundprozesse, die sich stapeln
- Problem 16: Theme-Altlasten
- Problem 17: Grosse Log-Dateien
- Problem 18: CDN nicht konfiguriert
- Problem 19: Synchrone API-Calls
- Problem 20: Fehlende Browser-Caching-Header
- Quick-Reference: Diagnose-Commands
- Checkliste: Performance-Troubleshooting
- Zusammenfassung
Kapitel 23: Fünf Performance-Transformations-Szenarien
- Einleitung
- Case Study 1: Enterprise-Telekommunikation — Launch-Chaos bewältigen
- Case Study 2: Schweizer Fashion-Shop — Mobile-First Optimierung
- Case Study 3: B2B Industriebedarf — Suche skalieren
- Case Study 4: Black Friday Survival — Die Nacht, in der alles zusammenbrach
- Case Study 5: Internationaler Marketplace — Multi-Tenant skalieren
- Zusammenfassung: Patterns über alle Case Studies
- Quellen
Kapitel 24: Ausblick – Neue Technologien und Trends
- Einleitung
- Core Web Vitals Evolution: INP ersetzt FID
- HTTP/3 und QUIC: Das neue Transportprotokoll
- Edge Computing: Code näher am Nutzer
- Shopware Roadmap: Was kommt?
- KI-gestützte Performance-Optimierung
- Composable Commerce: Die Zukunft der Architektur
- Green IT: Performance als Nachhaltigkeitsfaktor
- Checkliste: Zukunftssicherheit
- Zusammenfassung
Anhang A: Glossar
- A
- B
- C
- D
- E
- F
- G
- H
- I
- J
- K
- L
- M
- N
- O
- P
- Q
- R
- S
- T
- V
- W
- Z
Anhang B: Code-Snippets Referenz
- PHP / Shopware 6
- Konfiguration
- JavaScript
- Bash / Shell
- SQL
- Twig
- Weitere Snippets
Anhang C: Konfigurationen
- PHP
- Nginx
- Shopware
- MySQL / MariaDB
- Redis
- Supervisor
- Logrotate
- Environment (.env.local)
Anhang D: Ressourcen & Links
- Offizielle Dokumentation
- Tools
- Bücher & Artikel
- Community & Support
- Dienste & Hosting
- Companion Repository
- Checklisten
Anhang E: Cheat Sheet — Shopware Performance auf einen Blick
- Core Web Vitals
- Weitere Metriken (keine Core Web Vitals)
- Infrastruktur-Richtwerte
- Shopware CLI-Befehle
- MySQL/MariaDB
- Redis
- PHP/OPcache
- Konfigurationspfade
- Quick Health Check
- Die 20 häufigsten Probleme — Schnellreferenz
Über den Autor
- Mehmet Gökçe
- Feedback zum Buch