我开发了一个php脚本,我想连续运行。
例如,脚本run.php
执行一系列任务,但我不知道需要多长时间:它可能需要30秒,1分钟,2分钟或更长时间。
问题是这个脚本不能同时执行。
所以我不能使用cron作业,因为如果我每分钟设置一个cron作业,但脚本运行的时间超过1分钟,我就会有bug。
事实上,我希望这个cron作业永久执行:每次run.php
结束时,脚本run.php
都会一次又一次重新加载......
我不知道如何解决这个问题。
请帮忙吗?
谢谢。
答案 0 :(得分:1)
你[至少]有两个选择:
在run.php
代码下,确定它是否已在运行(通过设置在脚本开头检查的某个外部控制系统)并按照您的描述设置crontab作业。 [我推荐这种方法]。
使用(while :; do php run.php; done) &
运行一次,然后将其放在/etc/rc.local
内,使其在每次系统启动时运行。我真的不喜欢这种方法,但这是一种可能的解决方案。