Go
beego开启定时任务
beego开启定时任务
最近利用空闲时间用beego搭了个任务管理系统,需要用到定时任务来执行每日任务,并且发送通知,刚好beego的toolbox模块支持定时任务,大家可以查看toolbox 。
下面跟大家分享一下定时任务代码,我们在beego项目目录下创建一个utils目录,然后创建一个文件名为Task.go用于定时任务,代码如下
package utils import ( "github.com/astaxie/beego/toolbox" "time" ) /** 定时任务 */ func InitTask() { //创建一个任务 nodeMonitoringTask := toolbox.NewTask("nodeMonitoring", "0 0 10 * * *", NodeMonitoring) //全局任务 toolbox.AddTask("nodeMonitoring", nodeMonitoringTask) } /** 节点监控过期 */ func NodeMonitoring() error { //业务代码 //返回 return nil }
然后我们在main.go文件下修改main方法,修改后代码如下
package main import ( _ "huaweiCloudNodeManagement/routers" "github.com/astaxie/beego" "huaweiCloudNodeManagement/utils" "github.com/astaxie/beego/toolbox" ) func main() { // 定时任务 utils.InitTask() toolbox.StartTask() defer toolbox.StopTask() //执行 beego.Run() }
这样我们启动项目之后,就会根据我们设置的定时任务去执行,上面的demo中,我设定是每天10点执行一次定时任务,更多配置大家可以参考上面文档链接。
0条评论