运行 在最佳时间进行不同的后台作业
Run different background jobs at optimal times
在我的一个 Azure 应用服务中,我有一堆 Web 作业应该 运行 几个小时。
Job 1 - Should run each 1-2 hours
Job 2 - Should run each 2-4 hours
Job 3 - Should run each 4-6 hours
所有作业需要 20-30 分钟才能完成。
Job1 运行 每小时或全部两个小时并不重要。两个都很好...
作为第一种方法,我创建了一个如下所示的时间表:
Job 1: 0 0 */2 * * *
Job 2: 0 0 */4 * * *
Job 3: 0 0 */6 * * *
这行得通,但现在我的应用程序服务计划在 6 小时内都用完了,因为那样所有 Web 作业都会同时启动。
前两个工作全部 4 小时同时开始,什么也不是最优的。
我想找到三个时间表,这些时间表可以以正确的节奏解雇我的工作,但彼此转移一刻钟(或三十分钟)。
有没有简单的方法可以做到这一点?
我仍在努力理解时间表的格式,所以也许你有想法?
不是最优的,但我想到的只是指定你想要 运行
的时间
0 0 1,3,5,7,9,11,13,15 * * *
然后是其他工作
0 0 2,6,10,14 * * *
等等。
在我的一个 Azure 应用服务中,我有一堆 Web 作业应该 运行 几个小时。
Job 1 - Should run each 1-2 hours
Job 2 - Should run each 2-4 hours
Job 3 - Should run each 4-6 hours
所有作业需要 20-30 分钟才能完成。
Job1 运行 每小时或全部两个小时并不重要。两个都很好...
作为第一种方法,我创建了一个如下所示的时间表:
Job 1: 0 0 */2 * * *
Job 2: 0 0 */4 * * *
Job 3: 0 0 */6 * * *
这行得通,但现在我的应用程序服务计划在 6 小时内都用完了,因为那样所有 Web 作业都会同时启动。
前两个工作全部 4 小时同时开始,什么也不是最优的。
我想找到三个时间表,这些时间表可以以正确的节奏解雇我的工作,但彼此转移一刻钟(或三十分钟)。
有没有简单的方法可以做到这一点?
我仍在努力理解时间表的格式,所以也许你有想法?
不是最优的,但我想到的只是指定你想要 运行
的时间0 0 1,3,5,7,9,11,13,15 * * *
然后是其他工作
0 0 2,6,10,14 * * *
等等。