MindConnect MQTT – 架构、LPC 常见问题及建议
在 MC MQTT 架构中,客户端设备(Device,或者叫 Client)会直接与 MQTT Broker 进行通讯。设备发送给 Broker 的数据经过 Broker 中转直接被发送到消息队列中(不会像北端一样——发送到平台的数据通过 HTTP 请求会首先经过 Gateway)。
下图 MC MQTT 架构概览图中,只有被标记为红色(1、6、7、8、9)的这几个步骤的操作请求会经过 Gateway;其它所有步骤所涉及的请求都不会经过 Gateway。
使用者会遇到通过客户端连接 MQTT Broker 没有响应的情况。这里以使用 "MQTTX" 客户端工具为例。
目前 LPC 支持的 MQTT 版本为:3.1.x
参考 MQTT 使用介绍文档中 "三、为客户端(Client)生成 JWT" 这一章节。其中如下点需要遵循:
否则生成的 JWT (连接 Broker 的密码) 将是无效的。
第一次尝试连接 MQTT Broker 的用户,可以先浏览一次如何连接 MC MQTT Broker 介绍文档。文档中有对如何“连接 Broker”、“上传数据”等步骤的详细介绍。
同时也可以参考官网中对 MC MQTT 的介绍,里面有更多功能性的说明。
正常情况下用户都是通过 OpenSSL 在本地生成相关文件的。如果要将这些步骤做成自动化,集成到自动化工具里面,可以尝试使用脚本语言,例如:使用 Python 的 sys
库直接调取系统 cmd 命令来操作 OpenSSL 工具(如下图所示),这样可以省去使用代码来生成相关文件的相关开发工作(使用代码来生成密钥、证书之类的步骤比较繁琐)。