gin结合cron,实现定时任务

Python028

gin结合cron,实现定时任务,第1张

cron需要进行初始化,在gin的main中进行,然后后面的定时任务,使用addjob,addjob会返回一个jobid,后面关闭时,可以使用这个id去关闭。

1.main.go中初始化cron

2.InitCron,返回一个Cron类型

3.使用cj进行添加任务,任务会返回一个id,因为调用的时候会使用协程,将id通过channel返回

4.将id回收,已被删除定时任务时使用。另外实现mqttJob需要实现Run接口,addjob才能运行

5.删除定时任务,cj为gin初始化的new cron

利用 Etcd 的Lease租约特性来实现定时功能,同时通过Watch机制来实现多节点情况下只有一个节点执行该任务。通过定时任务库 Cron 的时间字符串解析器Parser来解析任务执行时间。

Etcd

Cron

源码链接