У меня есть многопоточная Java-программа, которая использует библиотеку с открытым исходным кодом, и в этой библиотеке есть некоторые ошибки, которые приводят к тупику. Я сообщил об ошибке, но для ее исправления потребуется время, мне нужно будет продолжать использовать эту программу и до тех пор, пока она перезагружается каждые 2-3 часа, это сделает работу за меня. Есть ли способ заставить программу перезапускаться каждые х минут?
10
Ответы:
Вы можете попробовать сделать в своем
crontab
:тогда
Команда
crontab
означает:источник
service <appname> restart > /dev/null 2>&1
в нужное время.Я предлагаю вам настроить Supervisor для вашей задачи. Он может отслеживать процесс, перезапускать его в случае сбоя, а также обеспечивает перенаправление вывода и другие полезные функции. Смотрите пример для программы, чтобы начать.
источник
crontab
(хотя оба решения работают просто отлично). Однако я считаю, что Supervisor лучше настраивает, какие сигналы отправлять процессу и когда (т.е. когда отправлятьSIGTERM
и как долго ждать перед отправкойSIGKILL
и т. Д.).