每5秒执行一次脚本


Execute Script every 5 seconds

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

提前感谢

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

使用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) &