调度PHP脚本

调度PHP脚本,php,linux,scheduled-tasks,Php,Linux,Scheduled Tasks,我有一个php脚本,我需要经常运行,即大约每10秒。鉴于所需的频率,cron似乎不合适 理想情况下,我想运行我的脚本; a) 在循环中,每次执行之间有5秒的短暂停顿,或 b) 计划脚本每10秒运行一次 php、mysql、linux 非常感谢您的建议。您可以将cron设置为每分钟运行一次以初始化脚本,然后创建一个检查日期的循环;如果低于51,则重复循环,否则退出循环,这样就不会生成无限循环。尽管您需要记住,这是非常低效的,因为它会使php不停地运行,并可能使您的服务器对正常方式没有响应。还有其他

我有一个php脚本,我需要经常运行,即大约每10秒。鉴于所需的频率,cron似乎不合适

理想情况下,我想运行我的脚本; a) 在循环中,每次执行之间有5秒的短暂停顿,或 b) 计划脚本每10秒运行一次

php、mysql、linux


非常感谢您的建议。

您可以将cron设置为每分钟运行一次以初始化脚本,然后创建一个检查日期的循环;如果低于51,则重复循环,否则退出循环,这样就不会生成无限循环。尽管您需要记住,这是非常低效的,因为它会使php不停地运行,并可能使您的服务器对正常方式没有响应。还有其他更高效的调度器可以在更短的时间跨度上运行。我所做的一件事是创建一个c/c++守护进程,它在机器上运行,每10秒只点击一次php应用程序。虽然这样做效率更高,并且允许php脚本退出,但您必须添加错误检查,以确保您的服务器在10秒的间隔内响应或实际收到ping,例如,如果它在apache下运行,可能会在非常繁忙的服务器上共享连接。

使用在infinate循环中运行的shell脚本。这个脚本应该触发您的PHP脚本,该脚本执行一次(并且只执行一次)任务,然后退出

您可以使用sleep命令在两次运行之间设置一个延迟


这样做是为了让PHP在每次运行后退出,这样PHP就可以释放内存和CPU时间。

设置每分钟一次的cronjob来运行PHP脚本

在PHP脚本中,循环运行代码6次


您可以使用
sleep
函数在每次循环执行之间创建一个暂停:

在cron中,您可以将脚本设置为每10秒执行一次。恐怕,在这种情况下,您的脚本将需要多少时间才能执行


另一种选择是,您可以在程序中创建一个无限循环,然后要完成的任务将在循环块内。执行一次循环后,使用sleep或usleep延迟10秒。在这里,你对程序没有太多的控制权。如果你想停止该程序,需要使用linux kill命令来终止任务。

也许这会有所帮助:@vucetica:当我点击向上投票时,你的答案已经不存在了!是的,有人评论说作为评论更合适,我同意。不,在cron中,您不能将脚本设置为每10秒执行一次。好的,最小间隔是1分钟。如果是这样,你需要连续运行脚本,并在每次迭代之间设置睡眠。带有延迟的无限循环将有所帮助。