每一个任务都需要编写一个Crontab命令,这是件很麻烦且很不友好的事情。 任务调度器允许你以代码的形式定义调度命令,并且服务器上只需要一个Crontab命令即可, 任务调度又是我们俗称的 “计划任务”
1.工欲善其事,必先利其器
Github一番搜索,发现Golang有个cron包(robfig/cron)大概满足需求,于是学习一下。
2.介绍
看了一遍文档,cron包支持的已经很全面了~~~不用自己造轮子了。
表达式
兼容Linux的crontab表达式(支持分钟级别)。
日志
可以很详细的记录调度的任务状态
时区
支持任务级别的时区配置
预定义计划
支持在未来指定的时间去运行
线程安全问题
该cron lib管理任务队列的slice没有做并发安全考虑,可能会出现任务竟抢行为。