ECTS——使用 Golang 开发的分布式定时任务管理系统

ECTS——使用 Golang 开发的分布式定时任务管理系统

架构设计

基于 Golang 开发的分布式定时任务管理系统

项目依赖

  • ETCD
  • MySQL
  • Vue
  • Element-UI

项目页面

ECTS——使用 Golang 开发的分布式定时任务管理系统

源码安装

# 克隆到本地
$ git clone git@github.com:betterde/ects.git

# 安装前端依赖
$ cd web && yarn install

# 打包前端资源
$ yarn build

# 安装打包静态资源到二进制的工具
$ cd ../ && go get -u github.com/shuLhan/go-bindata/...

# 打包静态资源
$ go-bindata -pkg web -o web/bindata.go web/dist/...

# 编译
$ go build -o ects main.go

下载可执行程序

下载地址

了解更多细节

文档地址

项目地址

Github

学Go以来,写的第一个项目,欢迎各位大佬给我提 pull requestissue,可以的话给个 star,谢谢!

TODO

  • [x] Web UI;
  • [x] Master 节点 API;
  • [x] 基于 ETCD 的服务注册于发现;
  • [x] 基于 ETCD 的流水线发布于订阅;
  • [x] 基于 ETCD 实现的分布式锁,用于更新 Worker 节点的状态;
  • [x] 实现 Mail 任务执行器;
  • [x] 实现 HTTP 任务执行器;
  • [x] 实现 Hook 任务执行器;
  • [x] 角色权限管理模块;
  • [x] 集成 Docker 部署;
  • [x] 集成 CI;
  • [x] 项目文档;
  • [ ] 集成单元测试;
  • [ ] 热重启;
  • [ ] 软件更新。
本作品采用《CC 协议》,转载必须注明作者和本文链接
《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
《L04 微信小程序从零到发布》
从小程序个人账户申请开始,带你一步步进行开发一个微信小程序,直到提交微信控制台上线发布。
讨论数量: 6

占楼,支持一下,感觉不错 :smiley:

4年前 评论
GeorgeKing (楼主) 4年前
ALMAS

这个帖子应该发到Golang板块

4年前 评论
GeorgeKing (楼主) 4年前

gcr.io/etcd-development/etcd:v3.5.6 这个镜像能发给我一份吗?下载不下来

1年前 评论
GeorgeKing (楼主) 1年前

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!