{"id":35259941,"url":"https://github.com/maomao94/zero-service","last_synced_at":"2026-06-15T08:01:21.970Z","repository":{"id":298226897,"uuid":"996569362","full_name":"maomao94/zero-service","owner":"maomao94","description":"zero-service: ⚡ 基于 go-zero 的 Go 微服务脚手架 | 开箱即用 gRPC服务和API网关、文件传输、国网电力IEC104协议、modbus 协议、DJI 机巢上云 api 支持","archived":false,"fork":false,"pushed_at":"2026-06-15T07:11:23.000Z","size":172731,"stargazers_count":13,"open_issues_count":0,"forks_count":4,"subscribers_count":0,"default_branch":"master","last_synced_at":"2026-06-15T07:24:36.455Z","etag":null,"topics":["dji","dji-sdk","go","go-zero","grpc","iec-104","modbus","tdengine"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/maomao94.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":"AGENTS.md","dco":null,"cla":null}},"created_at":"2025-06-05T06:20:21.000Z","updated_at":"2026-06-15T07:11:27.000Z","dependencies_parsed_at":"2025-10-29T06:12:46.410Z","dependency_job_id":"f355bb60-6b22-456e-947c-ad1d7b917e8b","html_url":"https://github.com/maomao94/zero-service","commit_stats":null,"previous_names":["maomao94/zero-service"],"tags_count":21,"template":false,"template_full_name":null,"purl":"pkg:github/maomao94/zero-service","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/maomao94%2Fzero-service","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/maomao94%2Fzero-service/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/maomao94%2Fzero-service/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/maomao94%2Fzero-service/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/maomao94","download_url":"https://codeload.github.com/maomao94/zero-service/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/maomao94%2Fzero-service/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34353193,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-15T02:00:07.085Z","response_time":63,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["dji","dji-sdk","go","go-zero","grpc","iec-104","modbus","tdengine"],"created_at":"2025-12-30T09:00:38.699Z","updated_at":"2026-06-15T08:01:21.962Z","avatar_url":"https://github.com/maomao94.png","language":"Go","funding_links":[],"categories":["Libraries that use [go-zero](https://github.com/tal-tech/go-zero)"],"sub_categories":[],"readme":"# Zero-Service\n\n基于 [go-zero](https://github.com/zeromicro/go-zero) 的工业级微服务脚手架，面向物联网数采、异步任务调度、实时通信、无人机机场接入等场景，提供开箱即用的多协议接入和高性能数据处理能力。\n\n## 特性\n\n- **多协议接入** -- IEC 60870-5-104 / Modbus TCP/RTU / MQTT / gRPC / HTTP，覆盖电力、工业自动化、物联网场景\n- **数采平台** -- 完整的 IEC 104 主站实现，支持 Kafka/MQTT/gRPC 三协议并行推送，内嵌 SQLite 轻量化配置管理\n- **大疆云平台** -- DJI Dock3 Cloud API MQTT 封装，支持直播、航线、远程调试、DRC 指令飞行\n- **异步任务调度** -- 基于 asynq 的分布式任务队列 + 自研计划任务管理引擎，支持 HTTP/gRPC 回调\n- **实时通信** -- SocketIO 消息网关，支持房间管理、广播推送、MQTT 桥接和 Token 鉴权\n- **容器管理** -- Docker 容器生命周期管理，提供 Kubernetes-like 的 Pod 抽象接口\n- **地理信息** -- H3 网格、GeoHash 编解码、电子围栏、坐标系转换\n- **响应式工具包** -- [antsx](common/antsx/README.md)：Stream/Promise/Invoke/EventEmitter，Go 原生的流式与异步编排\n\n## 快速开始\n\n### 环境要求\n\n- Go 1.25+\n- Redis（任务队列、缓存）\n- 可选：Kafka / MySQL / PostgreSQL / TDengine / Docker / MQTT Broker / Nacos\n\n### 安装\n\n```bash\ngit clone https://github.com/maomao94/zero-service.git\ncd zero-service\ngo mod tidy\n```\n\n### 启动服务\n\n```bash\n# 启动单个服务（以 trigger 为例）\ncd app/trigger\ngo run trigger.go -f etc/trigger.yaml\n\n# 或使用 Docker Compose 启动\ncd deploy\ndocker-compose up -d\n```\n\n详细指南：[快速开始](docs/quick-start.md)\n\n## 架构\n\n```\n                    +-----------------+\n                    |   Frontend/App  |\n                    +--------+--------+\n                             |\n              +--------------+--------------+\n              |                             |\n     +--------v--------+         +---------v---------+\n     |   gtw (BFF)     |         | socketgtw/push    |\n     | HTTP + gRPC-GW  |         | SocketIO 实时通信  |\n     +--------+--------+         +---------+---------+\n              |                             |\n    +---------+---------+         +---------+---------+\n    |  gRPC Service Mesh |\n    +----+----+----+----+\n         |    |    |\n   +-----+ +--+--+ +------+ +----------+ +----------+\n   |       |      |        |          | |          |\n+--v--+ +--v--+ +-v----+ +-v-------+ +-v-----+\n|trig | |file | |alarm | |bridgeXxx| |djicloud|\n|ger  | |     | |      | |modbus/mq| |DJI平台|\n+-----+ +-----+ +------+ +----+----+ +---+----+\n                                |         |\n        +--------+---------+----+         v\n        |        |         |        DJI Cloud API\n   +----v---+ +--v----+ +-v--------+    MQTT\n   |ieccaller| |iecstash| |streamevent|\n   |IEC 104 | |Kafka消费| |数据落库   |\n   +----+---+ +--+----+ +----+-----+\n        |        |            |\n   +----v--------v------------v----+\n   |       Kafka / Redis / DB      |\n   |  TDengine / OSS / SQLite      |\n   +-------------------------------+\n```\n\n详细架构：[架构概览](docs/architecture.md)\n\n## 核心服务\n\n| 服务 | 说明 | 文档 |\n|------|------|------|\n| **ieccaller** | IEC 104 主站 - 多从站通信、三协议推送 | [IEC 104 数采平台](docs/iec104.md) |\n| **iecstash** | IEC 104 数据合并 - Kafka 消费、ASDU 压缩 | [IEC 104 数采平台](docs/iec104.md) |\n| **streamevent** | 统一流数据事件协议 - 跨语言 gRPC | [IEC 104 数采平台](docs/iec104.md) |\n| **trigger** | 异步任务调度 + 计划任务管理 | [Trigger 服务](docs/trigger.md) |\n| **djicloud** | DJI 云平台服务 - Dock3 Cloud API | [DJI 云平台](docs/djicloud.md) |\n| **socketgtw/push** | SocketIO 实时通信网关 | [SocketIO 文档](docs/socketio.md) |\n| **gtw** | BFF 网关 - HTTP/gRPC 聚合入口 | - |\n| **file** | 文件服务 - 分片流上传、OSS 集成 | - |\n| **gis** | 地理信息 - H3/GeoHash/围栏/坐标转换 | - |\n| **alarm** | 告警服务 - 多级告警、钉钉/飞书集成 | - |\n| **podengine** | 容器管理 - Docker 容器生命周期 | - |\n| **bridgemodbus** | Modbus TCP/RTU 协议桥接 | - |\n| **bridgemqtt** | MQTT 协议桥接 | - |\n\n## 技术栈\n\n| 类别 | 技术 |\n|------|------|\n| 微服务框架 | go-zero |\n| RPC | gRPC + grpc-gateway + Protocol Buffers |\n| 消息队列 | Kafka (go-queue) |\n| 任务队列 | asynq + Redis |\n| 实时通信 | SocketIO / SSE |\n| 响应式工具 | antsx（Stream/Promise/Invoke/EventEmitter） |\n| 工业协议 | IEC 60870-5-104 / Modbus / MQTT / DJI Cloud API |\n| 关系数据库 | MySQL / PostgreSQL / SQLite |\n| 时序数据库 | TDengine |\n| 对象存储 | MinIO / 阿里 OSS / 腾讯 COS |\n| 服务发现 | Nacos |\n| 容器管理 | Docker SDK |\n\n## 文档\n\n| 文档 | 说明 |\n|------|------|\n| [文档索引](docs/README.md) | 全部文档导航 |\n| [快速开始](docs/quick-start.md) | 环境要求、安装、启动示例 |\n| [架构概览](docs/architecture.md) | 系统架构、模块依赖、数据流 |\n| [服务端口清单](docs/service-ports.md) | 各服务默认端口 |\n| [错误码规范](docs/error-codes.md) | HTTP/gRPC 错误码映射 |\n| [antsx 工具包](common/antsx/README.md) | Stream/Promise/Invoke/EventEmitter 响应式工具 |\n| [为什么选 antsx](docs/antsx-vs-reactive.md) | 与 Java WebFlux/RxJava 的对比分析 |\n| [开发指南](docs/development.md) | 环境搭建、代码生成、调试技巧 |\n| [部署指南](docs/deployment.md) | Docker/集群部署、配置管理 |\n\n## 参与贡献\n\n欢迎贡献代码！请先阅读 [贡献指南](CONTRIBUTING.md)。\n\n## 许可证\n\n[MIT License](LICENSE)\n\n## 链接\n\n- GitHub: [https://github.com/maomao94/zero-service](https://github.com/maomao94/zero-service)\n- Issues: [https://github.com/maomao94/zero-service/issues](https://github.com/maomao94/zero-service/issues)\n- go-zero: [https://github.com/zeromicro/go-zero](https://github.com/zeromicro/go-zero)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmaomao94%2Fzero-service","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmaomao94%2Fzero-service","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmaomao94%2Fzero-service/lists"}