Geordnetes Herunterfahren
Einen Prozess sauber beenden: keine neuen Anfragen mehr annehmen, laufende abwarten, Locks freigeben, Puffer leeren, Verbindungen schließen. Das Gegenteil: ein harter Kill (SIGKILL), der sofort abbricht.
Unix-Signale regeln den Ablauf: SIGTERM (höfliche Bitte, Standardsignal von kill) → der Prozess räumt auf → SIGKILL nach Ablauf eines Timeouts. Im Kubernetes-Pod-Lifecycle steuert terminationGracePeriodSeconds (Standard 30 s) das Zeitfenster, ein preStop-Hook erledigt eigene Aufräumlogik. Klassische Fallen: SIGTERM wird ignoriert und der Prozess hängt, Verbindungen zu DB-Pool oder Redis leaken, Anfragen im Flug enden als 502. Best Practice: erst den Load Balancer entwässern, dann den Prozess beenden. Connection Draining plus Retries sind das Paar, das Zero-Downtime-Deployments möglich macht.