每5秒执行一次脚本

时间:2015-11-15 11:37:01

标签: php mysql api

我知道这可以在多个线程上得到解答,但我仍然想问这是否是我案例的最佳做法。我有一个名为查询的表,其中包含需要完成的API调用行。因为我将有多个人使用cURL添加API调用需要对他们的网站进行,我想创建一个PHP脚本,每5-10秒运行一次并获取最后5行API调用并执行它们,所以我可以处理所有事情而不会让服务器发疯。 (有了这个,我还可以给用户一个估计完成查询的剩余时间)。那么这是实现我想要的最佳方式还是应该以另一种方式实现?如果是,你能简单解释一下如何实现5s重复吗?

提前致谢

编辑:我在CLOUDLINUX 6.7,WHM 11.52.0上运行

1 个答案:

答案 0 :(得分:1)

您无法使用CRON实现此目的:https://askubuntu.com/questions/800/how-to-run-scripts-every-5-seconds-using-cron

你可以使用一个cron作业来实现这一目标,这个作业每分钟启动12个后台进程的脚本:

* * * * * ~/dostuff.sh

dostuff.sh文件:

(sleep 5 && /path/to/task) &
(sleep 10 && /path/to/task) &
(sleep 15 && /path/to/task) &
(sleep 20 && /path/to/task) &
(sleep 25 && /path/to/task) &
(sleep 30 && /path/to/task) &
(sleep 35 && /path/to/task) &
(sleep 40 && /path/to/task) &
(sleep 45 && /path/to/task) &
(sleep 50 && /path/to/task) &
(sleep 55 && /path/to/task) &
(sleep 60 && /path/to/task) &