GopherCron
Golang 开箱即用的分布式 crontab system
提供响应式 web 管理界面
预览
监控面板
在线交流
Discussions Now
依赖
- Etcd # 服务注册与发现
- Mysql # 任务日志存储
引用
- Gin 提供 webapi
- gopherCronFe 提供可视化管理界面(已将构建后的文件内置于 dist/view 目录下)
- cronexpr 提供 cron 表达式解析器
- 🍉水瓜 提供服务注册发现能力
项目优势
- 分布式定时任务管理
- 任务流编排
- 响应式前端,移动端也可以轻松管理任务
实现功能
- 秒级定时任务
- 任务日志查看
- 随时结束任务进程
- 分布式扩展
- 健康节点检测 (分项目显示对应的健康节点 IP 及节点数)
- workflow 任务编排
项目构成
中心服务
- 提供定时任务 api 能力
- 提供任务管理服务端接口
- 提供 workflow 任务流编排能力
- 提供边缘任务状态与结果上报服务(日志默认存储 7 天)
- 提供服务注册与发现能力
- 为边缘节点提供分布式锁服务
- 集成即时通讯能力,任务状态变更感知更及时
边缘 agent
- 接收中心命令执行临时任务
- 实际执行定时任务的服务
- 自旋实现任务的定时执行,多副本任务通过分布式锁解决执行冲突问题