检查php脚本是否仍在运行
我有一个脚本可以监听jabber服务器并相应地做出响应。虽然它不应该停止,但昨晚它停止了。现在,我想每分钟运行一次cron作业,检查脚本是否正在运行,如果没有,则启动它 问题是,如何检查特定脚本是否仍在运行检查php脚本是否仍在运行,php,cron,windows-shell,Php,Cron,Windows Shell,我有一个脚本可以监听jabber服务器并相应地做出响应。虽然它不应该停止,但昨晚它停止了。现在,我想每分钟运行一次cron作业,检查脚本是否正在运行,如果没有,则启动它 问题是,如何检查特定脚本是否仍在运行 已经发布了一些解决方案,但这些都是针对Linux的,而我正在寻找一个Windows解决方案。有什么想法吗?谢谢。对于脚本来说,一个快速而肮脏的解决方法是使用设置为当前时间戳的日期列更新数据库中的一行。让cron second脚本检查此行的时间戳是否是最近的。我通常会这样做: 创建状态目录,例
已经发布了一些解决方案,但这些都是针对Linux的,而我正在寻找一个Windows解决方案。有什么想法吗?谢谢。对于脚本来说,一个快速而肮脏的解决方法是使用设置为当前时间戳的日期列更新数据库中的一行。让cron second脚本检查此行的时间戳是否是最近的。我通常会这样做:
$i++
if( $i%100 == 0)
file_put_contents("status.txt","ping");
我也有同样的问题,我用这个代码解决了:
file_put_contents("status.txt","ping");
我把它放在脚本的循环中
因此,我检查文件的最后修改日期,以查看脚本是否处于活动状态
要避免硬盘过载,您可以执行以下操作:
$i++
if( $i%100 == 0)
file_put_contents("status.txt","ping");
当$i==100、200或300等时,这将写入文件
这是一个变通办法我可以将该变通办法用作最后手段。是否有任何Windows shell脚本可以完成这项工作?Windows shell脚本不如JCL对用户友好,这说明了一些问题,因此我恐怕无法在这方面帮助您。您可以尝试查看PowerShell,因为这似乎很有用。这比更新数据库中的时间戳字段有多高效?我认为更新数据库更好,因为它有自己的锁定机制。然而,如果我们依赖一个文件,我们可能会陷入死锁。如果我错了,请纠正我。我在笔记本上运行了许多脚本。要从我的桌面访问mysql,我必须安装PHP。当我只处理一个文本文件时,这就变得不必要了。但是,每个病例都应单独处理。