我需要在CENTOS服务器上运行一堆长时间运行的进程。
如果我离开进程(python/php脚本)运行有时进程将停止运行,因为微不足道的错误,例如。字符串编码问题或有时,因为进程似乎被服务器杀死。
我尝试使用nohup并从crontab
中启动作业。是否有任何方法可以保持这些进程以这样一种方式运行,即保存所有变量,并且我可以从停止的地方重新启动脚本?
我知道我可以将其编程到代码中,但我更喜欢一个通用的实用程序,它可以保持这些东西运行,以便脚本完成,即使有微不足道的错误。
也许我需要某种流程管理工具?非常感谢您的建议
是否有任何方法可以保持这些进程以这样一种方式运行,即保存所有变量,并且我可以从它停止的地方重新启动脚本?
是的。这就是所谓的创建"检查点"或"纪念品"。
我知道我可以编程这个
好。开始。每个问题都是独一无二的,所以你必须创建、保存和重新加载纪念品。
,但更喜欢一个通用的实用程序,可以保持这些东西的运行,使脚本完成,即使有微不足道的错误。
它不能很好地概括。并非所有变量都可以保存。只有你自己知道怎样才能以一种有意义的方式重启你的进程。
也许我需要某种流程管理工具?
没有。
小错误;字符串编码问题
通常,我们通过单元测试找到这些。这节省了大量的编程工作,以解决错误。一盎司的预防胜过十分愚蠢的变通。
有时是因为进程似乎被服务器杀死了。
什么?你最好找出原因。一盎司的预防胜过十分愚蠢的变通。