5.5 KiB
5.5 KiB
Part 2: 系统架构
文档定位:从宏观视角阐述 AIoT 平台的顶层设计,涵盖逻辑架构、业务架构、技术架构及数据架构,为系统建设提供全景蓝图。
2.1 总体架构蓝图 (Logical Architecture)
本平台遵循标准的物联网四层架构模型,自下而上构建“感知-连接-平台-应用”的完整生态闭环。
graph TD
subgraph AppLayer [应用层 Application]
A1[智慧物业<br>Smart Property]
A2[智慧园区<br>Smart Campus]
A3[数据大屏<br>Dashboard]
A4[移动端<br>Mobile App]
end
subgraph PlatformLayer [平台层 Platform]
P1[<b>业务中台</b><br>用户/权限/流程/消息]
P2[<b>IoT中台</b><br>设备/规则/告警/指令]
P3[<b>数据中台</b><br>时序存储/数据清洗/分析]
end
subgraph NetworkLayer [网络层 Network]
N1[IoT Gateway<br>协议适配]
N2[API Gateway<br>流量分发]
N3[Edge Node<br>边缘计算节点]
end
subgraph PerceptionLayer [感知层 Perception]
S1[传感器<br>Sensors]
S2[智能设备<br>Smart Devices]
S3[控制器<br>Controllers]
S4[工控机<br>IPC]
end
PerceptionLayer -->|MQTT/TCP/HTTP| NetworkLayer
NetworkLayer -->|RPC/MQ| PlatformLayer
PlatformLayer -->|REST/WS| AppLayer
核心分层定义
- 感知层 (Perception):物理世界的数字触角,包含各类环境传感器、视频监控、门禁闸机及边缘网关。
- 网络层 (Network):连接物理与数字的桥梁,负责多协议(TCP/MQTT/HTTP)的统一接入与边缘协同。
- 平台层 (Platform):系统的核心大脑,提供设备管理、规则引擎、业务逻辑编排及数据治理能力。
- 应用层 (Application):面向最终用户的业务场景,如安保巡更、保洁排班、设施维保等 SaaS 应用。
2.2 业务架构 (Business Architecture)
平台采用 “以台促用” 的建设思路,概括为 “一个底座,两大中心,N个应用”。
2.2.1 两大核心中心
- IoT 连接中心 (IoT Center)
- 核心能力:解决设备“连得入、存得下、管得住”的问题。
- 功能模块:物模型定义、设备生命周期管理、规则引擎、OTA 升级。
- 业务运营中心 (Business Center / Ops)
- 核心能力:解决业务“流程化、标准化、智能化”的问题。
- 功能模块:
- 保洁条线:智能排班、耗材管理、公厕异味监测。
- 安保条线:电子巡更、应急报警、视频 AI 联动。
- 工程条线:设备台账、预防性维保、工单流转。
2.3 技术架构 (Technical Architecture)
基于 Spring Cloud Alibaba 微服务体系,采用存算分离与读写分离设计,确保系统的高可用与高扩展。
2.3.1 微服务分层实现
| 分层 | 服务组件 (Service) | 关键技术 | 职责说明 |
|---|---|---|---|
| 网关层 | viewsh-gateway |
Spring Cloud Gateway | HTTP 流量入口,鉴权、限流、路由。 |
viewsh-module-iot-gateway |
Netty / Vert.x | 以及高性能设备接入,支持 TCP/MQTT 长连接。 | |
| 业务层 | viewsh-module-system |
Spring Boot | 统一认证 (OAuth2)、RBAC 权限、多租户管理。 |
viewsh-module-ops |
Spring Boot + Flowable | 业务逻辑处理,集成工作流引擎处理复杂工单。 | |
viewsh-module-iot |
Spring Boot | 设备元数据管理,指令下发,规则计算。 | |
| 支撑层 | viewsh-module-infra |
MinIO / XXL-Job | 文件存储、定时任务、通知服务 (SMS/Mail)。 |
2.3.2 关键技术决策
- 通信框架:采用 Netty/Vert.x 构建高性能物联网关,解决百万级设备并发连接问题。
- 异步解耦:引入 RocketMQ,将设备上报数据与业务处理逻辑解耦,实现削峰填谷。
- 分布式事务:使用 Seata 保证跨服务的业务数据一致性。
2.4 数据架构 (Data Architecture)
数据是 AIoT 平台的资产核心,采用 “冷热分离 + 时序优化” 的混合存储策略。
2.4.1 数据流向图
[设备 Device]
↓ (Telemetry Data)
[IoT Gateway]
↓ (MQ Message)
[数据清洗/规则引擎]
│
├─(实时热数据/告警)─> [Redis] ──> [实时大屏/Web推送]
│
├─(设备历史日志)───> [TDengine] (时序数据库)
│
└─(业务状态/元数据)─> [MySQL] (关系型数据库)
2.4.2 存储选型
- 时序数据 (Time-Series):使用 TDengine 存储设备上报的高频遥测数据(如温度、电压),利用其超级表特性实现高性能写入与聚合查询。
- 业务数据 (Relational):使用 MySQL (或国产达梦/人大金仓) 存储用户、设备档案、工单记录等强一致性业务数据。
- 缓存数据 (Cache):使用 Redis 存储设备在线状态、Token 令牌及高频配置,保障低延迟访问。
2.5 部署架构
支持纯容器化 (Docker-Compose) 与云原生 (K8s) 两种部署模式,具备良好的云中立性。
- 接入层:支持多节点负载均衡 (SLB -> Nginx -> Gateways)。
- 服务层:无状态节点,支持 HPA 弹性伸缩。
- 数据层:支持主从/集群部署,保障数据可靠性。