直接回答

一张可落地的物联网平台架构图,需要说明物理信号如何变成可信数据、持久状态、运营决策,以及在适当情况下如何形成受控操作。可以从六个职责层开始:设备、边缘、连接与接入、平台服务、数据与分析、业务应用。随后补上真正决定生产行为的边界:设备身份、租户隔离、控制权限、故障隔离、可观测性和责任归属。

不要从厂商产品开始画。先确定流向、职责和失败行为,再把产品放入对应位置。团队必须先回答:设备离线怎么办、身份撤销如何生效、Broker 节点故障如何恢复、迟到数据如何处理,以及命令没有完成时由谁负责。

与厂商无关的物联网平台架构图

┌───────────────────────────────────────────────────────────────┐
│ 业务应用                                                      │
│ 运营工作流 · 客户 API · 报表 · 数字孪生 · 工单与业务系统      │
└──────────────────────────────▲────────────────────────────────┘
                               │ 业务事件 / 命令意图
┌──────────────────────────────┴────────────────────────────────┐
│ 平台服务                                                      │
│ 设备注册 · 授权 · 消息路由 · 状态 · 规则 · 作业 · OTA         │
│ 租户策略 · 审计 · 可观测性                                    │
└─────────────────────▲─────────────────────┬───────────────────┘
                      │ 遥测 / 事件          │ 受控命令
┌─────────────────────┴─────────────────────▼───────────────────┐
│ 连接与接入                                                    │
│ MQTT / HTTP / CoAP · 认证 · 配额 · 协议校验 · 缓冲            │
└─────────────────────▲─────────────────────┬───────────────────┘
                      │                     │
┌─────────────────────┴─────────────────────▼───────────────────┐
│ 边缘与网关                                                    │
│ 协议转换 · 本地缓存 · 语义归一 · 现场安全控制                 │
└─────────────────────▲─────────────────────┬───────────────────┘
                      │ 现场数据             │ 有边界的控制
┌─────────────────────┴─────────────────────▼───────────────────┐
│ 设备与物理过程                                                │
│ 传感器 · 执行器 · 固件 · 安全身份 · 本地安全机制              │
└───────────────────────────────────────────────────────────────┘

横向能力:
  数据:不可变事件 · 当前状态 · 时序数据 · 业务数据
  信任:设备身份 · 租户边界 · 授权 · 审计
  运营:健康度 · 积压 · 延迟 · 恢复 · 成本 · 责任人

向上路径代表观测:设备感知物理世界,边缘补充上下文或完成协议转换,接入层验证身份并控制流量,平台解释消息,业务应用把信息转化为工作。向下路径代表权限:用户或工作流提出操作意图,策略判断是否允许,平台生成有边界的命令,设备再上报真实结果。

设备与边缘网关

设备层负责感知、执行、固件、受保护的身份材料和本地安全行为。架构必须明确断网时设备如何运行。安全联锁、硬实时控制或确定性停机不能依赖一次云端往返。平台可以请求操作,但设备或现场控制器仍需执行物理限制。

当现场需要协议转换、本地缓存、语义归一、低延迟判断,或上行网络并不可靠时,才需要边缘层。边缘不能演变成没有文档的第二套平台。需要记录哪些数据以边缘为准、缓存如何保留时间戳和质量、配置如何版本化,以及恢复连接后本地状态如何与平台协调。可使用边缘与云端边界指南逐项决定工作负载的位置。

连接、认证与接入

连接层不只是选择 MQTT、HTTP 或 CoAP。接入边界还需要终止传输安全、认证主体、执行连接和消息配额、校验协议限制,并在不信任客户端自报租户或设备标识的前提下路由流量。网关、设备、后端服务和运维人员可能通过不同端点接入,也必须使用不同策略。

协议接收与业务接收需要分开。MQTT PUBACK 成功只证明一次协议跳的交互完成,不能证明规则已经执行、数据库已经提交或工单已经关闭。在进入生产前定义消息过期、重试、重复处理、死信和过载策略。

设备身份、注册表与授权

设备注册表应把一个持久内部标识与产品型号、凭据、当前归属、生命周期状态、配置资格和策略版本关联起来。设备身份回答谁建立了连接;归属回答当前由哪个租户或运营方管理;授权回答这个主体此刻可以执行什么操作。三者相关,但不能合并成一个字段。

撤销必须在明确时间内传播到 Broker、API 网关、缓存、现有会话和支持工具。设备转移归属时,必须先移除旧权限,再允许新控制。架构图应标出决策发生的位置及其执行点。可以从设备身份架构指南开始,并把每个执行点画出来。

消息、状态、规则与作业

消息层负责在组件之间传递观测和意图。稳定的设备消息模型应区分遥测、事件、命令、确认和结果状态。Topic 路由不能替代消息模式,消息队列也不能替代设备状态模型。

设备影子适合保存间歇联网设备的当前状态投影,但必须呈现期望状态、上报状态、版本、时间戳和不确定性。不可变事件应进入事件日志或持久消息流;高频测量应进入适合其写入和查询模式的存储。不能用一个含糊的“物联网数据库”方框代替三种不同职责。

规则引擎应产生可解释的事件或作业,而不是直接把副作用散布到多个服务。长时间作业需要负责人、重试策略、幂等键、超时、补偿或取消行为,以及结果记录。涉及物理系统的命令还需要授权、过期、确认和结果验证。

数据、分析与业务应用

运营状态、分析历史和业务记录应分开。运营状态回答“平台现在应该做什么”;时序历史回答“某个区间发生了什么”;业务数据回答“这影响哪个客户、资产、合同、工单或货物”。三类存储的保留、修正、访问和恢复要求并不相同。

业务应用应消费领域事件和受管 API,而不是依赖 Broker 内部结构或设备原始负载。这样,重新设计仪表盘无需修改固件,更换连接协议也不必重写每个工作流。该边界还能让租户隔离从设备身份一直测试到存储与导出;多租户隔离指南说明了这条端到端路径。

控制平面与数据平面

数据平面与控制平面应分开绘制。数据平面承载遥测、事件、状态更新、命令和确认;控制平面管理身份、策略、模式、设备配置、固件发布、配额、路由和可观测性。混在一起会让日常配置变更与生产数据无法区分,也会让紧急权限难以审计。

控制平面的变更必须具备版本、审批、分批发布、回滚和证据。一项可能使整个设备群掉线的策略变更,应该拥有与固件发布同等级别的影响范围控制。管理 API 不能因为由内部员工使用,就绕过租户边界或设备级授权。

故障边界与生产评审

为每个有状态组件标出负责人、事实来源、恢复目标、容量限制和降级行为。至少测试 Broker 节点丢失、身份服务延迟、下游背压、存储不可用、区域网络故障、边缘积压重放、重复命令,以及设备长时间离线后重新接入。一个写着“高可用”的方框不是证据。

容量维度必须分开:并发连接、认证速率、每秒发布、路由投递、持久会话、状态数量、离线积压、时序写入、命令延迟和恢复时间。在填写节点数或厂商限制前,先使用物联网平台容量估算指南建立负载模型。

最低限度的架构评审应回答:

  1. 每个身份在哪里认证,每个操作在哪里授权?
  2. 当前状态、不可变历史和业务事实分别由谁负责?
  3. 云端连接失败时,哪些功能继续在现场运行?
  4. 迟到、重复、无效或未授权消息如何处理?
  5. 命令如何过期、确认并证明最终结果?
  6. 每个共享组件如何执行租户边界?
  7. 配置、策略、模式和固件变更如何回滚?
  8. 哪些指标证明积压、延迟、错误、恢复和运营成本?

架构图完成职责划分后,运行物联网架构审查清单。需要继续设计每项平台能力时,进入物联网平台架构学习路径

主要参考来源

Microsoft Azure Architecture Center 给出了从设备、云网关、处理和存储到应用的基础 IoT 数据流。AWS Well-Architected IoT Lens 从设计原则和运营权衡角度组织生产评审。NISTIR 8259A 定义了设备标识、配置、数据保护、接口访问、软件更新和网络安全状态感知等基础能力。

这些资料用于评审架构,不是厂商采购清单。最终设计必须反映真实物理过程、安全义务、网络条件、设备群生命周期、租户模型、恢复目标和运营团队。