技术架构
系统架构图
客户端层Web 管理后台 / App / 移动端
HTTPS / WebSocket
Spring Cloud Gateway统一入口 · JWT 鉴权 · 请求路由 · 限流
用户服务user
网关管理mgmt
数据服务data
应用服务app
扩展 Hookexhook
公共服务common
基础设施层MySQL 8 · Redis · InfluxDB · Nacos · MQTT Broker
MQTT
边缘网关设备Go-HTTP
技术选型
| 类别 | 技术选型 | 说明 |
|---|---|---|
| 基础框架 | Java 17 + Spring Boot 3.0.2 | 最新 LTS 版本 |
| 微服务治理 | Spring Cloud Alibaba 2022 | Nacos 服务注册与配置中心 |
| API 网关 | Spring Cloud Gateway | 统一入口、鉴权、路由 |
| 服务调用 | OpenFeign | 微服务间负载均衡调用 |
| 业务数据库 | MySQL 8.0 | 结构化业务数据存储 |
| 缓存 | Redis | 会话缓存、热点数据加速 |
| 时序数据库 | InfluxDB | 海量时序数据存储与查询 |
| 消息中间件 | EMQX | MQTT Broker,万级设备接入 |
| Excel 处理 | EasyExcel 3.3 + Apache POI 4.1 | 批量导入导出 |
| RPC 框架 | gRPC | 扩展钩子模块远程调用 |
| 短信服务 | 阿里云短信 | 用户通知与验证码 |
微服务模块说明
| 模块 | 名称 | 职责 |
|---|---|---|
| user | 用户服务 | 用户认证、角色权限、项目管理 |
| mgmt | 网关管理 | 网关生命周期、设备管理、云组态、远程运维 |
| data | 数据服务 | 数据接入、存储、查询、数据广播 |
| app | 应用服务 | App 移动端接口 |
| exhook | 扩展 Hook | gRPC 远程钩子,第三方系统对接 |
| common | 公共服务 | 公共工具类、基础服务 |
| gateway | API 网关 | 统一鉴权、路由分发、限流熔断 |