IoT 平台项目规划

1. 项目定位

平台以本司硬件设备的数字化交付和持续服务为起点,而不是单纯的技术练习。通过一个可运营的设备平台沉淀产品、物模型、设备身份、用户关系、控制链路和服务数据,逐步形成面向个人用户和企业客户的物联网能力底座。

2. 成功标准

  • 本司设备能够在出厂后统一注册、鉴权、观测、绑定和控制。
  • 用户可以在小程序内完成从绑定到日常控制的自助闭环。
  • 运维能定位设备、链路、指令和告警问题,关键动作可审计。
  • 新产品主要通过配置物模型接入,而不是复制整套业务代码。
  • 开放客户设备和企业 SaaS 前具备可靠的租户隔离与 API 治理。

3. 分期规划

阶段目标核心交付退出门槛
MVP(当前)验证完整业务闭环管理后台、Node.js API、原生微信小程序、自动验证AC-01~AC-10 关键场景通过
生产一期承载本司设备PostgreSQL/TimescaleDB、Redis、EMQX、真实 ACK、监控告警、备份恢复试点设备稳定运行 30 天,SLO 达标
二期开放客户设备和应用多租户、产品自助、接入规范/SDK、白标应用模板租户隔离测试和开放 API 安全评审通过
三期企业 SaaS 与履约企业后台、设备组、工单/派单、Webhook、OEM/ERP OpenAPI首个企业客户验收并形成可复制方案

4. MVP 工作分解

4.1 管理后台

运营总览、产品列表/创建、设备列表/注册、用户与绑定关系、指令记录/下发、告警处置、管理员审计。后台适配桌面与移动浏览器。

4.2 后端

提供 HMAC 令牌认证、PBKDF2 密码校验、RBAC、产品/设备 API、设备遥测鉴权、用户绑定、设备归属校验、指令状态、告警和审计。MVP 采用原子替换的 JSON 文件持久化以免引入部署依赖。

4.3 用户小程序

提供微信登录适配入口、本地演示身份、设备总览、扫码/绑定码绑定、详情、属性展示、在线设备开关控制和个人中心。

5. 生产技术路线

设备 ──MQTT/TLS──> EMQX ──规则/桥接──> Kafka ──> 设备服务/规则引擎
 │                                      │
 └──HTTP/TCP 适配器─────────────────────┘
                                         ├─ PostgreSQL(业务/租户)
管理后台/小程序 ── HTTPS ──> API 网关 ──┼─ TimescaleDB(遥测)
                                         ├─ Redis(在线态/缓存/幂等)
                                         └─ 对象存储(固件/导出/归档)
  • EMQX 负责 MQTT 会话、鉴权、订阅和连接事件;不承载核心业务规则。
  • Kafka 解耦高频设备消息与业务处理,消费者以 deviceId + messageId 幂等。
  • PostgreSQL 保存租户、用户、产品、设备、绑定和指令元数据;TimescaleDB 保存时序遥测。
  • 控制服务经 Outbox 发布指令,设备 ACK 经消息链路回写状态,避免数据库和 Broker 双写不一致。

6. 项目节奏与责任

每两周一个迭代;产品负责人维护范围和验收条件,硬件负责人维护身份烧录/Topic/ACK 协议,后端负责人维护领域模型和消息可靠性,前端/小程序负责人维护交互与权限反馈,测试负责人维护自动化和真机矩阵,运维负责人维护环境、监控与恢复演练。

所有迭代必须满足:代码检查通过、API 回归通过、变更文档同步、敏感配置不入库、提供升级与回滚说明。

7. 当前交付入口

可运行工程位于 iot-platform-mvp;需求基线、API 契约和演进顺序分别见 交付记录/MODIFIED_FILE.md、11.API接口文档.md 和 12.迭代路线图.md。