我在 crontab 中设置了 3 个不同的作业(称它们为 jobA、jobB、jobC),它们以不同的时间间隔运行并在一天中的不同时间开始。例如,jobA 在每小时 5 分钟运行一次,jobB 在每小时 9 和 39 分钟运行一次,jobB 每 30 分钟运行一次,jobC 每 15 分钟运行一次。它们不相互依赖,但由于各种原因,它们不能同时运行。
问题是有时其中一个作业需要很长时间才能运行,而另一个作业在第一个作业完成之前就开始了,这会导致问题。
是否有某种方法可以对这些作业进行排队或假脱机,以便在当前运行的作业完成之前不会启动?我尝试使用此解决方案,但这并不能保证挂起的作业将按照它们应该开始的相同顺序恢复。最好有一个队列,但我找不到任何关于如何做到这一点的信息。