北向接口是什么
物联网平台通常分南向与北向:南向对接设备,把现场数据接进来;北向则把平台整理好的设备、数据、规则以接口形式开放给上层业务系统。业务系统不直接连设备,而是通过北向接口订阅数据、下发命令、管理设备台账。这样设备协议与厂商差异被平台屏蔽,业务侧只面对统一的数据模型。
基本信息
| 面向对象 | 业务系统、数据平台、组态软件、移动应用 |
|---|---|
| 常见形式 | REST 接口、MQTT 订阅、WebSocket、消息队列、库表直读 |
| 鉴权方式 | 密钥签名、令牌、双向证书、平台统一身份 |
| 数据形态 | 设备影子与属性快照、时序数据、事件告警、命令回执 |
| 关键指标 | 接口限流、订阅并发、消息积压、投递语义 |
| 运维要点 | 幂等、重试退避、断线重连、对账补数 |
典型使用场景
- 业务系统实时取设备最新状态:查设备影子而不是直接读设备
- 事件驱动:订阅告警与状态变更,推给工单系统或大屏
- 下行控制:下发命令并等待回执,避免发而不达
- 历史分析:批量拉取时序数据进数据仓库
- 多平台集成:用统一接口屏蔽不同厂商设备的差异
- 台账同步:把设备注册、分组、标签同步到资产系统
对接前要确认的六个问题
对接前要确认的六个问题
凭据怎么过期与续期 # 长连接莫名断开往往是凭据到期
订阅是否保证不丢消息 # 明确至少一次还是至多一次
命令是否返回回执与超时 # 没有回执就不算执行成功
限流是多少、超限怎么响应 # 退避策略要提前定好
历史数据能回溯多久 # 决定补数窗口和对账方式
数据模型变化如何通知 # 字段增删要有兼容约定对接方式对照
| 方式 | 适用 | 主要代价 |
|---|---|---|
| REST 查询 | 按需拉取快照与台账 | 轮询有延迟且消耗配额 |
| MQTT 订阅 | 实时变更与告警推送 | 需处理断线重连与重复投递 |
| WebSocket | 浏览器端实时展示 | 长连接数量受限,需心跳保活 |
| 消息队列 | 高吞吐异步解耦 | 要处理积压与顺序问题 |
| 库表直读 | 分析类批量取数 | 绕过平台语义,容易产生口径差异 |
限流是最常见的对接事故来源。业务侧应在客户端做限流与指数退避,并把被限流与业务失败区分开处理,否则重试会被误判成设备离线,告警噪音会淹没真正的问题。
订阅型接口要按至少一次投递来设计业务:同一条消息可能重复到达,处理逻辑需按消息标识或事件时间做幂等,不能依赖消息不会重复这个假设。
不要把平台的设备凭据直接下发到前端或移动端。北向接口凭据只应保存在服务端,前端通过自有后端代理访问,否则凭据泄露等于把整批设备的写权限交出去。