我有一个运行在标准linux,apache服务器上的php脚本。在某些情况下,我希望在用户执行某些操作后的15分钟内运行一个php脚本。 EG:用户访问时间为13:04:55,后台进程必须正好在13:19:55运行
当前使用的解决方案是每分钟运行一次的cron并检查是否需要采取措施,但这并不准确,因为计时器仅在一分钟内运行且无法设置为秒。 EG:cron在13:04,13:20运行,依此类推。
有关如何设置这些的任何建议吗?
是否有替代产品/装备任何其他简单的解决方案?
答案 0 :(得分:1)
Fat Controller 与CRON类似,除了指定每个脚本的开头之间的间隔,或者从上一个脚本运行结束到下一个脚本开始之间的时间间隔。在任何一种情况下,您都可以以秒为单位指定时间,并提供各种策略来管理或阻止重叠运行。
文档,示例和下载: http://fat-controller.sourceforge.net
答案 1 :(得分:0)
拥有一个每分钟运行一次的cron作业,查看是否有任何作业需要在那一分钟运行,并在开始每个作业之前休眠适当的秒数。
答案 2 :(得分:0)
也许是一个简单的解决方案,例如在php中设置一个包含事件触发时间的会话变量。在每个后续页面上,您可以将会话变量加载到一个javascript计时器中,该计时器会在会话变量的开始时间与now()时间相等于15分钟后,在后台异步发生事件。
这也可以让你使任务更具可移植性,而不是依赖于cron作业来做一些不属于“正常”功能的事情。
来源:
Jquery ajax call from javascript to PHP