在过去,init 守护进程用于禁用重生速度过快的任务。
我发现,UPSTART 永远地阻止了他们。
我已经找到了用于控制何时停止快速重生的作业的 COUNT 和 INTERVAL 控制,但我找不到如何在指定的等待时间后重新启动该作业。
- 这是为远程服务器准备的,必须通过 ssh 连接,我才能通过隧道重新连接到它。但它经常出现连接问题,运行 ssh 连接的作业快要挂了!我愚蠢地希望 upstart 能保持作业运行。
有什么办法吗,或者我需要做一些事情,比如运行一个 cron 作业来检查它是否正在运行,如果没有,就重新启动它?
答案1
Upstart 允许停止后休眠,以延迟作业的重新启动。从http://upstart.ubuntu.com/cookbook/#delay-respawn-of-a-job
post-stop exec sleep 5
现在,当作业失败时,它将等待 5 秒钟,然后再尝试再次连接。再加上将重生设置为 30 秒内 10 次之类的值,它应该会尝试永远重生(它只会在 30 秒内尝试 7 次,因此它不应该被踢出重生)