我有一个脚本可以更新很多状态"事情"。它有5个不同的子程序。 4个子程序需要每5分钟运行一次,其中1个只需要在凌晨12:05运行一次。问题是,当脚本在12:05执行时,大约需要8分钟才能完成。这导致下一次迭代在前一次迭代完成之前的12:10开始。分配给第二次迭代的资源导致第一次迭代运行速度变慢,推动其完成超过10分钟标记,从而允许第三次迭代开始。可以想象,相互分层的各种版本最终会压倒机器并导致崩溃。
简单的解决方案是将文件拆分为两个并创建单独的cron作业,如果没有其他选项,我肯定会这样做。但是,如果可能的话,我宁愿将所有状态保存在同一个文件中,以便简化安装和维护(将在很多机器上安装和使用)。
我希望有一个偏移的cron条目将在每天早上12:05运行脚本,等待10分钟然后再运行它,然后每隔5分钟运行一次。基本上:
12:05,12:15,12:20,12:25,12:30等
脚本知道它已经执行了一次,并且在当天的剩余时间内不会运行第5个子程序,使得5分钟的差距可以接受。
如果一切都有意义,请告诉我。如果需要,很高兴进入更多细节。提前感谢您提供的任何信息。非常感谢。