解决有关 MQTT 客户机无法连接的问题
有多种原因可能导致 MQTT 客户机无法连接至遥测通道。
过程
请考虑下列原因,以诊断 MQTT 客户机无法连接的问题:
- 检查队列管理器和遥测 (MQXR) 服务是否正在运行。
启动队列管理器。缺省情况下,MQXR 服务应随队列管理器一起启动。如果您将 MQXR 服务控制配置为手动启动,那么可能需要从服务文件夹中启动该服务。有关启动 MQXR 服务的更多信息,请参阅启动和停止 MQXR 服务。
- 请检查是否正确定义了遥测通道和遥测 (MQXR) 服务并且它们正在运行。
您可以手动定义 MQXR 服务,并将队列管理器的缺省传输队列设置为 SYSTEM.MQTT.TRANSMIT.QUEUE,此队列优先于现有的缺省传输队列。这将使得队列管理器适合于 Telemetry。或者,如果您尚未从 Telemetry 的“欢迎使用”页面来运行“定义样本配置”向导,那么可以考虑这样做。
- 您是否编写了自己的客户机?
如果编写了,那么编写的是使用 MQTT V3 协议而不是 V5 协议的客户机应用程序吗?请尝试通过运行 MQTT 客户机实用程序来找出问题。
- 您具有有效的客户机标识名称吗?
连接至 IBM® MQ 时,MQTT 客户机标识应少于 23 个字符,并且只能包含字母字符、数字字符以及句点 (.)、正斜杠 (/)、下划线 (_) 和百分号 (%)。
- 您是否已连接 MQTT 客户机并且耗尽了 MQTT 保持活动时间间隔?
“保持活动”属性是以毫秒为单位的时间间隔,经过此时间间隔之后,MQTT 客户机就会因处于不活动状态而断开连接。如果 MQXR 服务在保持活动时间间隔内未从客户机中接收到任何通信,它就会与客户机断开连接。
- 是否有大量 MQTT 客户机尝试同时连接至遥测通道?
每个遥测通道都有一个备用属性。这是遥测通道支持的并发连接请求数。确保未将该值设置为小于尝试连接的 MQTT 客户机的数目。
- 请检查 TCP/IP 连接是否仍然处于活动状态。

反馈

http://www.ibm.com/support/knowledgecenter/SSFKSJ_9.0.0/com.ibm.mq.explorer.doc/com.ibm.mq.explorer.doc/x_troubleshoot_client.htm