为了允许定期安排的任务在系统上产生负载,H应尽可能使用符号(对于“散列”)。例如,0 0 * *
十几个日常工作会在午夜时间造成大量的高峰。相比之下,使用H H * *
仍然会每天执行一次,但不是同时执行,能够更好地使用有限的资源。
该H
符号可以与范围一起使用。例如,H H(0-7) * * *
意味着从凌晨12:00到凌晨7:59之间的某个时间。也可以使用H带或不带范围的步长间隔。
该H符号可以被认为是一个范围内的随机值,但它实际上是作业名称的散列,而不是随机函数,因此对于任何给定的项目,该值都保持稳定。
请注意,对于月份的日期,由于月份长度可变,因此在大多数月份结束时,短周期(例如/3
或H/3
不会一致)都会一直工作。例如,/3
将在一个月的第1,4,… 31天运行,然后再在下个月的第二天运行。哈希总是选在1-28范围内,所以H/3
在一个月的月底之间会产生3到6天的间隔。(更长的周期也会有不一致的长度,但效果可能相对不那么明显)。
以空格开头的空#行将被忽略为注释。
- 此外,
@yearly,@annually,@monthly, @weekly,@daily,@midnight
,并且@hourly
也支持方便的别名。这些使用哈希系统进行自动平衡。例如,在一小时内的任何时间@hourly
都是一样的H * * * *
。@midnight
实际上是指从12:00到2:59 AM之间的一段时间。
另外,Poll SCM:定时行的执行,源码有变化才会执行 比如配置:*/10 * * * * 这样配置就会10分钟去检查svn是否有新源码,有就checkout,构建,没有就继续去潇洒,10分钟后再回来检查。
4. 例子:
a. 每十五分钟(也许在:07,:22,:37,:52)
H / 15 \* \* \* \*
b、每小时上半场每十分钟一班(三次,也许是:04,:14,:24)
H(0-29)/ 10 \* \* \* \*
c、从上午9:45开始每小时45分钟,每个工作日下午3:45结束,每两小时一次。
45 9-16 / 2 \* \* 1-5
d、每个工作日上午9点到下午5点之间,每两小时一次(也许在上午10:38,下午12:38,下午2:38,下午4:38)
HH(9-16)/ 2 \* \* 1-5
e、12月份以外的每月1日和15日每天一次
HH 1,15 1-11 \*
f、每10分钟构建一次:H/10 * * * *
或*/10 * * * *
g、每天8点构建一次:0 8 * * *
总结
三套“算法宝典”
算法刷题LeetCode中文版(为例)
人与人存在很大的不同,我们都拥有各自的目标,在一线城市漂泊的我偶尔也会羡慕在老家踏踏实实开开心心养老的人,但是我深刻知道自己想要的是一年比一年有进步。
最后,我想说的是,无论你现在什么年龄,位于什么城市,拥有什么背景或学历,跟你比较的人永远都是你自己,所以明年的你看看与今年的你是否有差距,不想做咸鱼的人,只能用尽全力去跳跃。祝愿,明年的你会更好!