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
- 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
- Case Study: Audit eines Schweizer Fashion-Shops
- 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 Die sw_thumbnails-Funktion
- 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
- Lernziele
- 5.1 Das Problem verstehen
- 5.2 CSS-Optimierung
- 5.3 JavaScript-Optimierung
- 5.4 Third-Party-Scripts kontrollieren
- 5.5 Shopware-Theme-Kompilierung optimieren
- 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 aktivieren
- 6.3 Cache-Strategien für verschiedene Seitentypen
- 6.4 Stale-While-Revalidate: Der Performance-Booster
- 6.5 Varnish: Der Turbo für High-Traffic-Shops
- 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 Query-Caching in der DAL
- 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 3: JIT-Compiler evaluieren
- Schritt 4: PHP-FPM dimensionieren
- Schritt 5: php.ini für Shopware optimieren
- Schritt 6: Nginx mit PHP-FPM verbinden
- 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
- Schritt 4: Failover testen
- Schritt 5: Shopware für Sentinel konfigurieren
- Schritt 6: Monitoring und Alerting einrichten
- Troubleshooting
- Checkliste: Tag 17-18
- Zusammenfassung
- 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
- Quellen
Kapitel 12: Real User Monitoring (RUM)
- Einleitung
- Voraussetzungen
- 12.1 RUM vs. Synthetic Monitoring
- 12.2 Core Web Vitals 2024
- 12.3 Die web-vitals Library
- 12.4 RUM-Daten sammeln
- 12.5 RUM-Dashboard erstellen
- 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
- 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
- Die theme.json verstehen und optimieren
- SCSS-Variablen und Bootstrap-Overrides
- JavaScript-Optimierung
- Twig-Templates optimieren
- Critical CSS implementieren
- ESI-Rendering für Header/Footer (Shopware 6.7)
- Migration zu Vite (Shopware 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
- 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: Performance-Experiment-Typen verstehen
- Schritt 2: Statistische Grundlagen implementieren
- Schritt 3: Sample Size berechnen
- Schritt 4: Experiment Service implementieren
- Schritt 5: Frontend-Tracking implementieren
- Schritt 6: Template-Integration
- Schritt 7: Performance-Budgets definieren
- Schritt 8: CLI-Analyse durchführen
- Praxis-Beispiel: Lazy Loading A/B Test in Shopware
- Troubleshooting
- Zusammenfassung
- Quellen
Kapitel 21: Third-Party Scripts & Tag Management
- Ziel dieses Kapitels
- Voraussetzungen
- Schritt 1: Third-Party Scripts auditieren
- Schritt 2: Google Tag Manager lazy laden
- Schritt 3: GTM-Container optimieren
- Schritt 4: Consent-basiertes Script Loading
- Schritt 5: Partytown für Web Worker nutzen
- Schritt 6: Route-spezifische Script-Budgets
- Schritt 7: Performance-Monitoring einrichten
- Schritt 8: Payment-Provider Scripts optimieren
- 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 große 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: Große 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: Langsame Cronjobs blockieren
- Problem 16: Zu viele aktive Themes
- Problem 17: Große 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: Reale Fallstudien aus 26 Jahren
- 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
- L
- M
- O
- P
- Q
- R
- S
- T
- V
- W
- Z
Anhang B: Code-Snippets Referenz
- PHP / Shopware 6
- JavaScript / TypeScript
- 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
- Offizielle Dokumentation
- Tools
- Bücher & Artikel
- Community & Support
- Dienste & Hosting
- Companion Repository
- Checklisten
- Tools
- Bücher & Artikel
- Community & Support
- Dienste & Hosting
- Companion Repository
- Checklisten
Anhang E: Cheat Sheet — Shopware Performance auf einen Blick
- Core Web Vitals Zielwerte
- Infrastruktur-Zielwerte
- 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