Рейтинг:1

Останавливает ли ОС все PID перед перезапуском, когда пользователь нажимает «Перезагрузить» в Ubuntu?

флаг in

У меня есть сервер, написанный на Node.js, который прослушивает события SIGTERM и SIGINT. Мне интересно, что Ubuntu останавливает все PID (или какие PID) останавливает перед перезапуском.Так, например, если мой процесс node прослушивает эти события и хочет корректно завершить работу, но корректное завершение работы займет некоторое время, сколько времени у меня есть, прежде чем ОС убьет его.

Рейтинг:1
флаг cz

Если вы решите выключить или перезагрузить систему, то systemd сначала отправит вашему процессу сигнал SIGTERM. Если он не отреагирует на SIGTERM в течение определенного времени, он отправит SIGINT, и если он по-прежнему не ответит на это, он в конечном итоге отправит SIGKILL. Я считаю, что время составляет 90 секунд и 5 минут соответственно, но я не могу найти соответствующие документы, прошло довольно много времени с тех пор, как я профилировал выключение, и я не хочу снова профилировать выключение прямо сейчас...

Quesofat avatar
флаг in
Это супер полезно!!!!! Спасибо!
Рейтинг:1
флаг cn

Отправка сигналов всем процессам происходит очень поздно при завершении работы системы. Большинство зарегистрированных процессов уже остановлены сервис-менеджером.systemd для Ubuntu и других дистрибутивов Linux, но, возможно, что-то еще, например supervisord или PM2.

Зарегистрируйте свое приложение в диспетчере служб и настройте его остановку с желаемым поведением. Службы systemd определенно могут определять команду остановки, какие сигналы отправляются и как долго ждать перед отправкой kill.

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.