go语言基于Gin集成后台管理系统开发定时任务管理cron/v3好用又好看

系统目前是支持两种定时类型,一种是函数类型,一种是接口类型,来支持多样的业务;时间周期可视化选择,方便设定执行周期。框架UI漂亮,添加管理定时任务设置简单,客户都可以做自己调整执行时间周期,直观的执行日志,下面我们一起框体验吧!

一、在线体验和获取代码地址

立即体验

去获取代码

二、截图效果

三、使用

HttpJob 接口类型

任务类型选择:访问URL。

接口类型是比较简单的,在系统中配置好调用的接口地址(访问的url地址)、调用周期即可;

ExecJob 函数类型

任务类型选择:调用函数。

函数类型是需要使用代码来完成的业务,这个时候我们需要使用函数类型;

系统中给出了一个示例:

cronjob目录中可以看到examples.go的文件,这里边是给出的一个示例代码;

下面我们针对示例代码做一下介绍:

第一步:需要创建一个结构体,这个结构体需要实现JobCore接口;如:ExamplesOne,里边实现了Exec方法;

Go 复制代码
type ExamplesOne struct{}

func (t ExamplesOne) Exec(arg interface{}) error {
    str := time.Now().Format(timeFormat) + " [INFO] JobCore ExamplesOne exec success"
    // TODO: 这里需要注意 Examples 传入参数是 string 所以 arg.(string);请根据对应的类型进行转化;
    switch arg.(type) {
    case string:
        if arg.(string) != "" {
            fmt.Println("函数参数:", arg.(string))
            fmt.Println("函数执行了:", str, arg.(string))
        } else {
            fmt.Println("arg is nil")
            fmt.Println("函数执行了:", str, "arg is nil")
        }
        break
    }
    return nil
}

第二步:需要在jobbase.go下的InitJob中注册这个结构体;如:ExamplesOne;需要将结构体的名称作为key,结构体作为value;这样重新启动项目,就可以在系统中进行配置并使用了;

Go 复制代码
func InitJob() {
    jobList = map[string]JobsExec{
        "ExamplesOne": ExamplesOne{},
        // ...
    }
}
相关推荐
小森林之主4 天前
秒级定时任务速查手册:核心语法与实用示例
定时任务·cron·定时调度·速查手册·秒级定时
呆萌很6 天前
【Gin】文件上传下载(单文件 + 多文件)
gin
先跑起来再说8 天前
Go 排行榜系统的工程化实现:分布式锁、快照表与定时刷新
分布式·go·gin
遇事不決洛必達9 天前
【数据库系列】本地映射云服务器Mysql的方法
服务器·数据库·mysql·定时任务
必胜刻9 天前
一个异步生成游戏功能的落地复盘:Redis Stream + WebSocket + 状态补偿
redis·websocket·golang·gin·状态补偿
TE-茶叶蛋11 天前
B-tree vs GIN Trigram vs HNSW
gin
sxdtzhp12 天前
定时任务避峰运行:远离整点,保障系统稳定运行
运维·软件工程·定时任务·crontab
曾几何时`13 天前
Go(一)Gin框架 和 GORM机制
开发语言·golang·gin
老毛肚14 天前
Gin + GORM 接口可视化测试
gin
lolo大魔王14 天前
Gin 框架中间件超详细实战教程(原理、全局中间件、路由中间件、自定义中间件、跨域、日志拦截)
中间件·gin