RsMQ 消息中间件 · 设备接入
RsMQ 消息中间件 · 设备接入
接入要素
设备或边缘网关作为 MQTT 客户端接入 RsMQ,建立连接时需提供以下要素:
| 要素 | 说明 |
|---|---|
| ClientID | 客户端唯一标识,同一 Broker 内不可重复,重连设备应保持稳定的 ClientID |
| 用户名 / 密码(凭据) | 在启用认证时用于身份校验,须妥善保管 |
| Keep Alive | 心跳间隔,客户端周期发送报文以维持长连接 |
| Clean Session | 指示是否使用持久会话,影响断线重连后的订阅与未达消息恢复 |
| 遗嘱消息 | 可选,设备异常离线时由 Broker 代发状态通知 |
主题层级设计
建议按「业务域 / 站点 / 设备 / 数据类型」的层级规划主题,保持命名稳定、语义清晰,并为平台侧的通配符订阅预留层次:
text
site/{site_id}/device/{device_id}/telemetry
site/{site_id}/device/{device_id}/status
site/{site_id}/device/{device_id}/command/down
- 遥测数据(telemetry)通常高频上报,可结合 QoS 0 或 QoS 1 使用。
- 状态(status)消息适合使用保留消息,使平台订阅后立即获得设备最新状态。
- 下行指令对可靠性要求较高时建议使用 QoS 1 或 QoS 2。
发布与订阅
接入流程:建立 TCP/TLS 连接 → 提交 ClientID 与凭据完成认证 → 按需订阅主题 → 发布数据,并在运行期间维持心跳。
text
# 网关发布现场数据(示例)
PUBLISH topic: site/S01/device/IGT-0001/telemetry
payload: {"temp":42.5,"ts":1700000000}
# 平台订阅全站设备状态(示例)
SUBSCRIBE topic: site/+/device/+/status qos: 1
接入建议
- 长连接场景合理设置 Keep Alive,兼顾掉线检测及时性与低开销。
- 弱网链路按消息重要性选择 QoS,避免对高频遥测滥用 QoS 2。
- 边缘网关(IGW-S / IGT-Pro)作为现场汇聚节点统一接入,可减少直连设备数量并简化凭据管理。