检查我的php文件是否正在运行?如果没有运行文件

时间:2014-05-24 13:08:35

标签: php streaming

我写了一个PHP推特流媒体代码,它不断搜索或过滤实时推文。我有一个问题,如果假设文件由于任何网络故障而停止,那么应该有一些功能可以识别,文件已经停止,再次运行它。如果已经在运行什么都不做。有什么帮助?

2 个答案:

答案 0 :(得分:1)

您正在寻找某种“锁定机制”。在互联网上的例子中可以找到许多方法。最简单的可能是实现“触发器”事件,通常是每分钟触发脚本的cron作业。脚本完成的第一件事是检查是否有另一个实例在运行。如果是这样,它会自行终止,如果不是它继续其真正的目的。因此关键部分是检测步骤。可以再次使用不同的替代方案,最简单的方法是编写一个包含脚本处理它的锁定文件。然后,后续启动的脚本实例不仅可以检查此类锁定文件的存在,而且通过读取进程ID,它还可以针对进程表对其进行测试,以检查该先前脚本是否仍在执行。这是一种强有力且常见的模式。

答案 1 :(得分:0)

如果你在Linux上,你可以使用神http://godrb.com/这是一个过程监控工具。您应该能够监视php脚本,然后在它停止时采取行动。操作可能是重新启动脚本并发送电子邮件通知。将采取一些配置,但它应该适合你。