跑了几个策略后台进程,吃了个亏:


明明进程在跑、数据也是新的,PM2 却显示已停。
如果信 PM2 直接 restart,反而把还在干活的进程打断了。
后来明白:PM2 / launchd / pid 文件,都只是看护层登记的状态 —— 它有没有把进程记上,跟进程实际在不在跑,是两回事。
真死活要看进程自己产出的健康文件 —— 最近一次更新是几分钟前 + 进程数对得上 = 活着。
写了个巡检脚本,每个进程同时报 4 个值:
- 进程在不在 (用 ps 查)
- PM2 / launchd 有没有登记
- 健康文件多久前更新过
- 三个对不对得上
只要健康文件是新的,就不当死亡处理。
工程教训:判断"系统活没活",不要看你建的看护层怎么说,看系统自己产出的东西新不新。
此页面可能包含第三方内容,仅供参考(非陈述/保证),不应被视为 Gate 认可其观点表述,也不得被视为财务或专业建议。详见声明
  • 赞赏
  • 评论
  • 转发
  • 分享
评论
请输入评论内容
请输入评论内容
暂无评论