/lightning-go

以 `Go` 语言为主,采用 斗鱼 微服务框架Jupiter 实现后端 API 模块开发

Primary LanguageGo

lightning-go

环境依赖

版本依赖

  • Go 1.14+
  • MySQL 5.7+
  • Redis 3.2+

模块介绍

  • 多云云主机生命周期管理
    • 阿里云
    • 腾讯云
    • 华为云
    • 亚马逊
  • 消息中心
  • 任务调度
    • 触发Dag任务
    • 查询Dag详情
    • 查看任务日志
  • 定时任务

vm1

vm2

项目目录结构

├── README.md
├── build.sh
├── cmd              # 项目入口
│   ├── migrate      # 创建表
│   └── server       # 启动服务
├── config           # 配置文件
│   ├── config.toml  # 配置文件
├── go-ops.service   # 服务systemd文件
├── go.mod
├── go.sum
├── internal         # 内部依赖
│   ├── app          # 应用
│   ├── cron         # 定时任务
│   ├── db           # 数据库
│   └── http         # http
├── logs             # 日志目录
├── pkg
├── scripts
└── test             # 测试用例

部署

  • 克隆代码
$ git clone git@github.com:zhengyansheng/lightning-go.git 
$ cd lightning-go
$ go mod init lightning-go 
  • 同步数据库
# make migrate
  • 启动服务
# make run
  • 生成 api docs
# make swagger

定时任务

  • 同步云主机元数据
    • 同步新增
    • 变更
    • 通知异常
$ go run scripts/cron/cron_sync_instance.go