Saltar al contenido
uencoder

Graceful Shutdown

El apagado controlado (graceful shutdown) deja de aceptar nuevas peticiones tras recibir una señal de terminación, termina las peticiones en vuelo y luego sale, evitando peticiones interrumpidas.

Propósito

Garantizar que no se pierdan peticiones en vuelo durante el apagado, posibilitando despliegues sin tiempo de inactividad.

Mecanismo

Con SIGTERM: 1) darse de baja del balanceador (detener peticiones nuevas); 2) esperar a que terminen las peticiones en vuelo (dentro de un timeout); 3) cerrar conexiones de base de datos; 4) salir. Hook preStop de K8s + terminationGracePeriodSeconds.

Casos de uso

  • Despliegue sin downtime
  • Integridad de peticiones
  • Operación en K8s

References