System Design · Senior · Frage 26 von 75
Wie deployt man eine API-Änderung, ohne Clients auf der alten Version zu brechen?
- 1Expand-and-Contract: hinzufügen, migrieren, das Alte entfernen
- 2API und Frontend gleichzeitig ausrollen, in derselben Sekunde
- 3Nutzer bitten, nach dem Release die Seite neu zu laden
Antwort zeigen
Richtige Antwort: Expand-and-Contract: hinzufügen, migrieren, das Alte entfernen
Erklärung
Offene Tabs, Mobile-Apps und Caches leben mit altem Code. Zuerst unterstützt die API das alte und das neue Format, dann migrieren die Clients, und erst danach wird das Alte entfernt. Derselbe Ansatz gilt für Migrationen des DB-Schemas.