SYSTEM ATLASЗагрузка материала

Корректное завершение сервиса

Graceful Shutdown

Корректное завершение прекращает приём новой работы, даёт текущим операциям закончиться и только затем останавливает процесс.

Простыми словами

Процедура остановки, при которой сервис прекращает принимать новую работу, завершает текущую и только затем освобождает ресурсы. Например, при деплое Node-сервис перестаёт попадать в балансировщик, завершает текущие ответы и закрывает SQLite перед выходом. Поэтому заранее определяют границы ожидания и поведение при отказе - иначе один медленный компонент начинает удерживать ресурсы и распространять проблему дальше.

Пример от @Vibeclakr

Пример при разработке

При деплое Node-сервис перестаёт попадать в балансировщик, завершает текущие ответы и закрывает SQLite перед выходом.

Это редакционный пример применения, а не часть определения или доказательство концепции.

Формальное определение

Корректное завершение прекращает приём новой работы, даёт текущим операциям закончиться и только затем останавливает процесс.

Механизм действия

Процесс получает сигнал, меняет readiness, закрывает listeners, дожидается in-flight операций и завершает ресурсы до дедлайна.

Пример в работе

Нерабочий подход

Внедрить «Корректное завершение сервиса» как формальную настройку, не проверив сценарий отказа и ограничение: Слишком долгий grace period замедляет деплой; зависшие операции всё равно требуют принудительного завершения.

Системный подход

Применять «Корректное завершение сервиса» только для заявленной цели, проверять поведение на реальном контуре и сохранять наблюдаемый критерий результата.

Ограничения

Слишком долгий grace period замедляет деплой; зависшие операции всё равно требуют принудительного завершения.

Источник

Kubernetes Documentation, “Pod Lifecycle: Pod termination”, 2026.

Первоисточник