Verwaltung des Anwendungslebenszyklus in Azure Container Apps
Der Anwendungslebenszyklus von Azure Container Apps dreht sich um Revisionen.
Wenn Sie eine Container-App bereitstellen, wird die erste Revision automatisch erstellt. Weitere Revisionen werden erstellt, wenn sich die Container ändern oder wenn Anpassungen an dem Abschnitt template
der Konfiguration vorgenommen werden.
Eine Container-App durchläuft vier Phasen: Bereitstellung, Aktualisierung, Deaktivierung und Herunterfahren.
Hinweis
Azure-Container-Apps-Aufträge unterstützen keine Überarbeitungen. Aufträge werden direkt bereitgestellt und aktualisiert.
Bereitstellung
Wenn Sie eine Container-App bereitstellen, wird die erste Revision automatisch erstellt.
Aktualisieren
Wenn eine Container-App mit einer Revisionsumfangsänderungaktualisiert wird, wird eine neue Revision erstellt. Sie können auswählen, ob alte Revisionen automatisch deaktiviert werden sollen (Einzelrevisionsmodus) oder ob sie verfügbar bleiben sollen (Mehrfachrevisionsmodus).
Im Einzelrevisionsmodus behandelt Container-Apps den automatischen Wechsel zwischen Überarbeitungen, um die Bereitstellung von Ausfallzeiten zu unterstützen.
Deaktivieren
Sobald eine Revision nicht mehr benötigt wird, können Sie eine Revision mit der Option deaktivieren, diese später erneut zu aktivieren. Während der Deaktivierung werden Container in der Revision heruntergefahren.
Shutdown
Die Container werden in den folgenden Situationen heruntergefahren:
- Beim Abskalieren einer Container-App
- Beim Löschen einer Container-App
- Beim Deaktivieren einer Revision
Wenn das Herunterfahren eingeleitet wird, sendet der Containerhost eine SIGTERM-Nachricht an Ihren Container. Der im Container implementierte Code kann auf diese Meldung auf Betriebssystemebene reagieren, um die Beendigung zu behandeln.
Wenn Ihre Anwendung nicht innerhalb von 30 Sekunden auf die SIGTERM
-Nachricht reagiert, beendet SIGKILL Ihren Container.
Stellen Sie außerdem sicher, dass Ihre Anwendung das Herunterfahren ordnungsgemäß verarbeiten kann. Container werden regelmäßig neu gestartet, daher erwarten Sie nicht, dass der Zustand in einem Container beibehalten wird. Verwenden Sie stattdessen externe Caches für teure In-Memory-Cacheanforderungen.