У меня есть серверный процесс Java, который выполняет собственный код, и возможность всего процесса, отказывающего из-за проблемы в собственном коде, всегда там. Есть ли любой механизм, предлагаемый *, отклоняют операционные системы, где я могу заставить процесс повторно породить себя, когда он существует неправильно (статус выхода! = 0)?
Есть ли какой-либо инструмент/утилита там, который может автоматизировать эту задачу для какого-либо вида процесса путем обеспечения определенного уровня управления/конфигурации одновременно?
Существует несколько опций - Вы могли всегда переносить его в короткий сценарий оболочки как этот:-
#!/bin/sh
RC=1
while [ $RC -ne 0 ]; do
./my-java-app
RC=$?
done
Совсем не изящный, но может быть достаточным.
То, что Вы ищете, обычно называют контролем контролем или процессом процесса. Существует много инструментов, которые делают это, обычно как часть переменного набора функций. Выскочка все более используется для системных служб в мире Linux. Monit является первой вещью, которую я попробовал бы за программу, не запущенную корнем, но существует много альтернатив.