У меня есть процесс, для завершения которого требуется произвольное количество времени, от 2 секунд до пары минут. Важно, чтобы этот процесс завершился корректно (не прервался). Я использую supervisord и сервер ubuntu для его запуска.
Когда сервер получает сигнал выключения ACPI (команда перезагрузки от поставщика VPS, это то, что я предполагаю в EC2), будет ли супервизор (и вся система) ждать завершения всех дочерних процессов во время выполнения последовательности выключения?
Вам следует проверить следующие параметры конфигурации:
stopsignal
чтобы указать, какой сигнал будет отправлен в вашу программу, чтобы она корректно остановилась
stopwaitsecs
чтобы указать, как долго супервизор должен ждать корректного завершения процесса, прежде чем отказаться от него и отправить SIGKILL.
http://supervisord.org/configuration.html#program-x-section-settings