Глоссарий

Graceful Shutdown

Graceful Shutdown (корректное завершение) — процесс остановки сервиса без резкого прерывания: сначала он перестаёт принимать новые запросы, завершает обработку активных и только потом останавливается. Альтернатива — kill -9, обрывающий соединения посередине.

Зачем

Unix сигналы

SIGTERM — запрос на завершение (graceful). SIGKILL — принудительное завершение (нельзя перехватить). При деплое обычно отправляют SIGTERM, ждут N секунд (timeout), затем SIGKILL.

В PHP

pcntl_signal(SIGTERM, function () {
  $this->shouldStop = true; // остановить loop воркера после текущей задачи
});
pcntl_async_signals(true);

Kubernetes

terminationGracePeriodSeconds — время ожидания между SIGTERM и SIGKILL. По умолчанию 30 секунд.