По порядку Middle Процессы и сигналы обновлено
Порядок остановки сервиса
Вопрос
Расставь шаги корректной остановки сервиса через systemd по порядку.
Попробуйте сами
Расставьте шаги по порядку стрелками.
- 1Приложение выходит с кодом 0
- 2Приложение перестаёт принимать новые запросы
- 3systemd отправляет главному процессу SIGTERM
- 4Если процесс не вышел за TimeoutStopSec, systemd отправляет SIGKILL оставшимся процессам
- 5Приложение дожидается текущих запросов и закрывает соединения с БД
Показать ответ и разбор
Коротко
Сначала мягкий сигнал, затем приложение само сворачивается: закрывает вход, доделывает работу, освобождает ресурсы и выходит. SIGKILL это страховка на случай зависания, он приходит только по истечении таймаута.
Правильный порядок
- 1systemd отправляет главному процессу SIGTERM
- 2Приложение перестаёт принимать новые запросы
- 3Приложение дожидается текущих запросов и закрывает соединения с БД
- 4Приложение выходит с кодом 0
- 5Если процесс не вышел за TimeoutStopSec, systemd отправляет SIGKILL оставшимся процессам
Разбор
Сначала мягкий сигнал, затем приложение само сворачивается: закрывает вход, доделывает работу, освобождает ресурсы и выходит. SIGKILL это страховка на случай зависания, он приходит только по истечении таймаута.
Ответьте сами, а не прочитайте
В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.