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条评论