Updates und Wartung des Shopsystems: Prozess und Staging
Kurz gesagt
Updates Ihres Shopsystems spielen Sie sicher ein, indem Sie die Release-Notes lesen, die Version nach Semantic Versioning einordnen und das Update zuerst in Staging testen. Vor dem Produktivstart erstellen Sie ein Backup und halten einen Rollback-Plan bereit. So stellen Sie sicher, dass Sie bei Problemen zurückkehren können.
Das Wichtigste
- MAJOR-Versionen eines Shopsystems, das nach Semantic Versioning versioniert, bringen API-inkompatible Änderungen; ein ausführliches Testen in Staging ist redaktionelle Empfehlung.
- Ab Version 1.0.0 sind MINOR- und PATCH-Versionen nach Semantic Versioning API-abwärtskompatibel; PATCH enthält ausschließlich API-kompatible Bugfixes.
- Prerelease-Versionen wie 1.0.0-beta.1 gelten nach Semantic Versioning als unstable; der Verzicht auf Produktivbetrieb ist redaktionelle Empfehlung.
- Vor jedem Update: Backup erstellen und Rollback-Plan bereithalten.
- Das Update wird zuerst in Staging getestet, dann in Produktion eingespielt.
Was Sie vorab brauchen
Bevor Sie ein Update einspielen, brauchen Sie fünf Dinge:
- Zugang zu einer Staging-Umgebung, die Ihre Produktion abbildet: gleiche Datenstruktur, gleiche Plugins, gleiche Konfiguration
- Ein aktuelles, geprüftes Backup Ihrer Datenbank und Ihrer Dateien
- Die Release-Notes des Anbieters für die Zielversion
- Ein Zeitfenster, in dem Sie bei Problemen ausrollen können, ohne den laufenden Betrieb zu stören
- Einen dokumentierten Rollback-Plan, der benennt, wie Sie den alten Stand wiederherstellen
Ohne Staging und ein geprüftes Backup fehlt Ihnen die Grundlage für einen sicheren Rollback. Prüfen Sie vor dem Update, dass Staging mit Ihrer Produktion übereinstimmt und dass das Backup aus dem aktuellen Stand stammt.
Schritt für Schritt: Updates sicher einspielen
Schritt 1: Release-Notes lesen
Lesen Sie die Release-Notes des Anbieters für die Zielversion, bevor Sie etwas installieren. Achten Sie auf inkompatible Änderungen, auf erforderliche Datenbank-Migrationen, auf bekannte Probleme und auf Sicherheitslücken, die das Update schließt. Notieren Sie, welche Plugins oder Erweiterungen Sie zusätzlich aktualisieren müssen, und ob das Update ein bestimmtes Minimum an PHP- oder Systemversion voraussetzt. Die Release-Notes sind die Grundlage für Ihre Risikoeinschätzung: Sie zeigen, ob das Update ein PATCH mit Bugfixes ist oder eine MAJOR-Version mit API-inkompatiblen Änderungen.
Schritt 2: Version einordnen
Shopsysteme, die nach Semantic Versioning versionieren, nutzen die Form MAJOR.MINOR.PATCH und definieren eine öffentliche API, deren Änderungen die Versionsnummern vermitteln. Die MAJOR-Ziffer steigt bei API-inkompatiblen Änderungen, die MINOR-Ziffer bei neuen, API-kompatiblen Funktionen, die PATCH-Ziffer bei ausschließlich API-kompatiblen Bugfixes. Diese Kompatibilitätsregeln gelten, sobald die Major-Version größer als null ist, also ab Version 1.0.0. Versionen mit Major-Version 0 (0.y.z) sind für die initiale Entwicklungsphase gedacht; ihre API sollte nicht als stabil betrachtet werden, und Änderungen können in jeder Form auftreten. Eine MAJOR-Version kann das Verhalten von Plugins und von eigenem Code ändern; ein ausführliches Testen in Staging ist redaktionelle Empfehlung. MINOR- und PATCH-Versionen sind ab Version 1.0.0 API-abwärtskompatibel; ob ein konkretes Update für Ihren Shop risikoarm ist, zeigen die Release-Notes. Prerelease-Versionen wie 1.0.0-beta.1 kennzeichnet die Spezifikation als unstable; sie entsprechen unter Umständen nicht den Kompatibilitätsanforderungen der regulären Version. Die Empfehlung, Prereleases nicht produktiv einzusetzen, ist redaktionell.
Schritt 3: In Staging testen
Spielen Sie das Update zuerst in Ihrer Staging-Umgebung ein. Staging sollte Ihre Produktion abbilden: gleiche Datenstruktur, gleiche Plugins, gleiche Konfiguration. Testen Sie die kritischen Wege: Produktseite, Warenkorb, Kasse, Zahlung. Prüfen Sie, ob das Update ohne Fehler durchläuft, ob die Migrationen korrekt ausgeführt werden und ob die Plugins mit der neuen Version zusammenarbeiten. Testen Sie auch die Fälle, die in den Release-Notes als bekanntes Problem genannt sind. Erst wenn Staging fehlerfrei ist, spielen Sie das Update in Produktion ein.
Schritt 4: Backup erstellen
Erstellen Sie vor dem Produktivstart ein vollständiges Backup: Datenbank und Dateien. Prüfen Sie, dass das Backup wiederherstellbar ist, indem Sie es in einer Testumgebung zurückspielen. Ohne ein geprüftes Backup haben Sie keinen Rollback. Notieren Sie, wann das Backup erstellt wurde, wo es liegt und wer es erstellt hat. Das Backup ist Ihr Ausgangspunkt für den Rollback.
Schritt 5: Update einspielen
Spielen Sie das Update in Produktion ein. Führen Sie die erforderlichen Migrationen aus und leeren Sie die Caches. Halten Sie das Zeitfenster ein, in dem Sie bei Problemen ausrollen können. Dokumentieren Sie, welche Version Sie eingespielt haben, wann Sie sie eingespielt haben und welche Migrationen Sie ausgeführt haben. Diese Dokumentation hilft Ihnen, den Rollback nachzuvollziehen.
Schritt 6: Ergebnis prüfen
Prüfen Sie nach dem Update die installierte Version, die kritischen Wege und die Fehlermeldungen. Testen Sie die Zahlung in einem echten Durchlauf. Überwachen Sie den Shop in den Stunden nach dem Update auf neue Fehler und auf ungewöhnliche Last. Prüfen Sie, ob die Migrationen die Daten korrekt umgewandelt haben.
Release-Checkliste mit Rollback
Die Checkliste fasst die Schritte zusammen und benennt für jede Phase den Rollback. Führen Sie die Checks in der Reihenfolge der Phasen durch und notieren Sie, wann Sie jede Phase abgeschlossen haben.
| Phase | Check | Rollback |
|---|---|---|
| Vor dem Update | Release-Notes gelesen, Version eingeordnet, Staging getestet, Backup erstellt und geprüfter Rollback-Plan vorhanden | — |
| Beim Update | Migrationen ausgeführt, Caches geleert, Version eingespielt, Zeitfenster eingehalten | Update zurücksetzen, alte Version wiederherstellen |
| Nach dem Update | Version geprüft, kritische Wege getestet, Zahlung durchgelaufen, Fehler überwacht | Backup wiederherstellen, Shop auf alten Stand zurücksetzen |
So prüfen Sie das Ergebnis
Prüfen Sie, dass die installierte Version der Zielversion entspricht. Testen Sie die kritischen Wege: Produktseite, Warenkorb, Kasse, Zahlung. Prüfen Sie die Fehlermeldungen und die Server-Logs. Überwachen Sie den Shop in den Stunden nach dem Update auf neue Fehler. Ein Update gilt als eingespielt, wenn die Version stimmt, die kritischen Wege funktionieren und keine neuen Fehler auftreten.
Wenn etwas nicht klappt
| Symptom | Ursache | Lösung |
|---|---|---|
| Shop zeigt nach dem Update eine Fehlerseite | Inkompatible Plugin- oder Erweiterungsversion | Rollback ausführen, Plugin aktualisieren, Update erneut in Staging testen |
| Zahlung schlägt fehl | Zahlungs-Plugin wurde nicht mitaktualisiert | Zahlungs-Plugin aktualisieren, Zahlung in Staging testen, dann in Produktion prüfen |
| Daten fehlen nach dem Update | Migration ist fehlgeschlagen | Backup wiederherstellen, Migration erneut ausführen, Ergebnis prüfen |
Wann Sie Hilfe holen sollten
Holen Sie sich Hilfe, wenn das Update eine MAJOR-Version mit inkompatiblen Änderungen ist, wenn Sie eigenen Code haben, der durch das Update brechen kann, oder wenn die Zahlungsintegration nach dem Update nicht funktioniert. Ein Entwickler oder der Anbieter kann die Migration und die Plugin-Kompatibilität prüfen.