javascript / intermediate
Snippet
Kontrolliertes Herunterfahren mit Prozess-Signalen
Die Behandlung von Beendigungssignalen wie SIGTERM ermöglicht es Ihrer Anwendung, keine neuen Anfragen mehr anzunehmen und bestehende Verbindungen oder Datenbank-Handles zu schließen, bevor der Prozess beendet wird.
snippet.js
1
2
3
4
5
6
7
8
9
10
const http = require('node:http');const server = http.createServer((req, res) => res.end('OK')).listen(3000);process.on('SIGTERM', () => {console.log('SIGTERM received. Closing server...');server.close(() => {console.log('Server closed. Exiting process.');process.exit(0);});});
nodejs
Erklärung
1
process.on('SIGTERM', ...)
Registriert einen Listener für das Beendigungssignal, das häufig von Container-Orchestrierern wie Docker oder Kubernetes gesendet wird.
2
server.close(() => { ... })
Stoppt den Server vor der Annahme neuer Verbindungen und wartet auf den Abschluss bestehender Verbindungen, bevor der Callback ausgeführt wird.