有什么方法可以确保某些流程始终在运行?
假设我需要这个运行:
php -f myscript.php -param1=value1
现在我这样做:
启动进程,然后将PID写入文件(myProcess.pid)。 然后我安排一个cronjob,它会定期尝试每5分钟一次又一次地启动该过程。
该过程实际上是一个 bash脚本文件,它首先检查myProcess.pid是否存在以及是否是,如果该文件中的PID真的在运行,如果不是,则启动它并且用新的PID重写“myProcess.pid”。
该解决方案存在一些问题:
是否存在更好的方法?
答案 0 :(得分:4)
您需要某种监控应用程序,例如
Supervisor是一个客户端/服务器系统,允许其用户在类UNIX操作系统上监视和控制许多进程。
或者,您可以创建一些守护进程的PHP代码: