一、xxl-job 的简介
xxl-job 是一个轻量级分布式任务调度平台,核心的设计目标:学习简单、开发迅速、轻量级、易扩展。现已开放源代码并接入多家公司线上产品线,开箱即用。而且有较为完善的说明文档 《分布式任务调度平台XXL-JOB》和 图形化操作界面。
xxl-job是开源项目,在 GitHub 可以下载到项目的源码,调度中心是一个 Spring MVC 项目,搭建 demo 前也需要将项目完整 clone 到本地。https://github.com/xuxueli/xxl-job/
二、Cron表达式
2.1 Cron格式说明
* * * * * * *
| | | | | | |
| | | | | | +—- 年 (range: 1970-2099)
| | | | | +——– 周 (range: 1~7)
| | | | +———— 月(range: 1~12)
| | | +—————- 日(range: 1~31)
| | +——————– 时(range: 0~23)
| +———————— 分(range: 0~59)
+—————————- 秒(range: 0~59)
- 使用【*】描述:每周期;代表所有可能的值,例如month字段是星号,则表示在满足其它字段的制约条件后每月都执行该命令操作。
- 使用【-】描述:某周期 ~ 某周期;表示一个整数范围,例如“2-6”表示“2,3,4,5,6”
- 使用【/】描述:从某点开始,每周期执行一次;指定时间的间隔频率,例如“0-23/2”表示每两小时执行一次。同时正斜线可以和星号一起使用,例如*/10,如果用在minute字段,表示每十分钟执行一次。
- 使用【,】描述:指定的某几个周期;指定一个列表范围,例如,“1,2,5,7,8,9”
- 使用【具体数字】描述:指定的某个周期;
2.2 实例
其他实例:
* * * * * ? —> 每1秒执行一次;
*/1 * * * * ? —> 每1秒执行一次;
0 0 * * * ? —> 每1小时执行一次;
0 0 */1 * * ? —> 每1小时执行一次;
0 */2 * * * ? —> 每2分钟执行1次;
* */2 * * * ? —> 每2分钟执行60次;注意:此处容易出错
0 0 */5 * * ? —> 每5小时的整点执行1次;
* * */5 * * ? —> 每5小时执行3600次;
0 30 21 * * ? —> 每晚的21:30执行一次;
0 30 6 10,20 * ? —> 每月10、20日的06:30执行一次;
0 30 6 ? ? 6,7 —> 每周六、周日的1:30执行一次;
0 0,30 18-23 * * ? —> 每天18 : 00至23 : 00之间每隔30分钟执行一次;
0 0 23-7/1 * * ? —> 每天晚上11点到早上7点之间,每隔一小时的整点执行一次;
其他可以参考:https://blog.csdn.net/qq_43563538/article/details/107541227
原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/280916.html