Linux 下,检测程序挂掉并自动重启的正确姿势是什么

2020 年 8 月 7 日
 jingcheng407

目前是写一个额外的脚本去监控这个进程,没了就重启,体验一般.

请问有没有系统级的方案,或者现成业界主流方案,请大大们赐教

5429 次点击
所在节点    Linux
28 条回复
autoxbc
2020 年 8 月 7 日
这是用 Deno 实现的保活,前端看着肯定亲切

(async function callee(){
   await Deno.run( {
     cwd:'./',
     cmd:[
      'deno',
      'run',
      '--allow-net',
      '--allow-read',
      'file_server.ts',
    ],
  } ).status();
  
   setTimeout( callee , 3000 );
} )();

出错后隔 3 秒重启,防止一执行就出错的话,错误信息疯狂滚屏
linvaux
2020 年 8 月 7 日
supervisor
nuk
2020 年 8 月 7 日
while true; do xxx; sleep 1; done
hanguofu
2020 年 8 月 7 日
systemd service 添加
Restart=on-failure
就一定可以了吗 ? 如果是的话,求个完整的 systemd service 范例 ,谢谢!
EminemW
2020 年 8 月 7 日
守护进程
GGGG430
2020 年 8 月 7 日
@nuk +1
Cbdy
2020 年 8 月 7 日
system
docker
pm2
还可以写个 crontab 自己监控一下

方法很多
hijoker
2020 年 8 月 8 日
@Oceanhime 这个还有 golang 版本的啊

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://study.congcong.us/t/696468

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX