我的问题来自我观察到每分钟cronjob运行时所做的观察:
12:00:15 (cron started)
12:01:20 (cron started)
12:02:02 (cron started)
.
.
.
似乎cron并非每分钟(每60秒)运行一次。该cron实际上运行php脚本,该脚本执行mysql查询以选择和更新数据库。不到2秒即可完成。
按分钟计划的cronjob应该在该分钟的开始时间(12:00:00)运行还是在该分钟的其他任何特定秒运行?
系统的负载与此有关吗?有什么方法可以确保一分钟开始时就启动cron?
您所观察到的结果一点也不令我感到惊讶,cron
这并不精确到第二个。您可以相信*它可以在您对其进行编程的分钟内运行任务,但是您实际上不应该依赖于更高的精度。
如果您需要在准确的时间开始工作,则应该更早地开始工作,并在脚本中等待该时刻到来。而且由于1分钟是所支持的最小间隔cron
,因此我会考虑使用其他选项来启动它(例如Python脚本)。
(*)参见下面的评论
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句