Как реализовать graceful shutdown в Node.js?

SeniorNode.js · Backend·Обновлено 16 июня 2026
Коротко
Нужно перестать принимать новые запросы, завершить активные, закрыть соединения и выйти по timeout.

Нужно перестать принимать новые запросы, завершить активные, закрыть соединения и выйти по timeout.

Сильный ответ должен раскрыть: SIGTERM; server.close; DB close; timeout; readiness probe.

Важно не допустить типичные ошибки: сразу делать process.exit; не закрывать ресурсы; зависать без deadline.

Что хочет услышать интервьюер

SIGTERM

server.close

DB close

timeout

readiness probe

Пример: Node.js example

process.on('SIGTERM', shutdown);

Типичные ошибки

сразу делать `process.exit`

не закрывать ресурсы

зависать без deadline

Лучшие курсы по теме

изображение курса

Docker и Ansible

Антон Ларичев
AI-тренажерыAI-тренажеры
Гарантия
Бонусы
иконка звёздочки рейтинга4.7
3 999 ₽ 6 990 ₽
Подробнее
изображение курса

Node.js с нуля

Антон Ларичев
AI-тренажерыAI-тренажеры
Практика в студииПрактика в студии
Гарантия
Бонусы
иконка звёздочки рейтинга4.8
3 999 ₽ 6 990 ₽
Подробнее
изображение курса

Nest.js с нуля

Антон Ларичев
AI-тренажерыAI-тренажеры
Практика в студииПрактика в студии
Гарантия
Бонусы
иконка звёздочки рейтинга4.6
3 999 ₽ 6 990 ₽
Подробнее