Skip to content

golang的定时项目(不用停机,热更新),模拟的Linux的crontab 说明: 1.定时任务规则保存在数据库中(附录有表结构) 2.提供接口来实时增加新任务,add-增加实时任务链,build-编译新扩展 3.代码中有扩展示例 4.第一版本只实现了诸如如下形式的定时任务 * * * * 或者x x x x 分 时 日 月 语义和Linux相同,不包含周

Notifications You must be signed in to change notification settings

axaxx/go_crontab

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

go_crontab

golang的定时项目(不用停机,热更新),模拟的Linux的crontab 说明: 1.定时任务规则保存在数据库中(附录有表结构) 2.提供接口来实时增加新任务,add-增加实时任务链,build-编译新扩展 3.代码中有扩展示例 4.第一版本只实现了诸如如下形式的定时任务 * * * * 或者x x x x 分 时 日 月 语义和Linux相同,不包含周

使用:配置数据库 用户名密码自己改,改完之后在config.go文件调整 配置库示例 CREATE TABLE IF NOT EXISTS crontab_plugins_config ( id int(11) NOT NULL AUTO_INCREMENT COMMENT '主键', name varchar(256) NOT NULL COMMENT '扩展名', plugin varchar(256) NOT NULL COMMENT '扩展标志', plugin_path varchar(1024) NOT NULL COMMENT '扩展路径', status varchar(64) NOT NULL COMMENT '数据状态', exec_time varchar(1024) NOT NULL COMMENT '执行时间', create_time datetime NOT NULL COMMENT '创建时间', update_time datetime NOT NULL COMMENT '更新时间', PRIMARY KEY (id) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='配置表' AUTO_INCREMENT=2 ;

INSERT INTO crontab_plugins_config (id, name, plugin, plugin_path, status, exec_time, create_time, update_time) VALUES (1, 'ceshi', 'test', '/plugins/test', '1', '1 * * *', '2021-09-20 11:34:27', '2021-09-20 16:40:51');

项目初始化 go mod init go_crontab go mod tidy

即可

About

golang的定时项目(不用停机,热更新),模拟的Linux的crontab 说明: 1.定时任务规则保存在数据库中(附录有表结构) 2.提供接口来实时增加新任务,add-增加实时任务链,build-编译新扩展 3.代码中有扩展示例 4.第一版本只实现了诸如如下形式的定时任务 * * * * 或者x x x x 分 时 日 月 语义和Linux相同,不包含周

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages