客户端配置的心跳是3600秒,实际不到3600秒就断线了

环境信息

  • EMQ X 版本:4.3.5
  • 操作系统及版本:centos7
  • 其他

问题描述

客户端配置的心跳是3600秒,实际不到3600秒就断线了,我用mqttx工具测试也是一样的。

配置文件及日志

配置文件未更改

QQ截图20210817152516

这是日志

如果是心跳超时的错误是keepalive_timeout,你这个是etimedout,所以你这个错误是socket异常导致,详细可以抓包看下网络交互流程

socket异常是什么情况呢, 我用了你们官方测试的borker地址也是一样会超时

客户端到 broker 之间的网络断了。如果你把 keepalive 设置太大的话,这个是常见现象。keepalive 本身就是用来防止这种情况的,设置为 30s ~ 60s 是合理的。