Files
aiot-platform-cloud/docs/technical-overview/02-系统架构.md

5.5 KiB
Raw Blame History

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

核心分层定义

  1. 感知层 (Perception):物理世界的数字触角,包含各类环境传感器、视频监控、门禁闸机及边缘网关。
  2. 网络层 (Network)连接物理与数字的桥梁负责多协议TCP/MQTT/HTTP的统一接入与边缘协同。
  3. 平台层 (Platform):系统的核心大脑,提供设备管理、规则引擎、业务逻辑编排及数据治理能力。
  4. 应用层 (Application):面向最终用户的业务场景,如安保巡更、保洁排班、设施维保等 SaaS 应用。

2.2 业务架构 (Business Architecture)

平台采用 “以台促用” 的建设思路,概括为 “一个底座两大中心N个应用”

2.2.1 两大核心中心

  1. IoT 连接中心 (IoT Center)
    • 核心能力:解决设备“连得入、存得下、管得住”的问题。
    • 功能模块物模型定义、设备生命周期管理、规则引擎、OTA 升级。
  2. 业务运营中心 (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 存储选型

  1. 时序数据 (Time-Series):使用 TDengine 存储设备上报的高频遥测数据(如温度、电压),利用其超级表特性实现高性能写入与聚合查询。
  2. 业务数据 (Relational):使用 MySQL (或国产达梦/人大金仓) 存储用户、设备档案、工单记录等强一致性业务数据。
  3. 缓存数据 (Cache):使用 Redis 存储设备在线状态、Token 令牌及高频配置,保障低延迟访问。

2.5 部署架构

支持纯容器化 (Docker-Compose) 与云原生 (K8s) 两种部署模式,具备良好的云中立性。

  • 接入层:支持多节点负载均衡 (SLB -> Nginx -> Gateways)。
  • 服务层:无状态节点,支持 HPA 弹性伸缩。
  • 数据层:支持主从/集群部署,保障数据可靠性。