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