emqx断开连接无法重连

EMQX 版本

EMQX 版本

EMQX 5.0.26

EMQX 集群情况

未使用集群,仅单节点

服务器(运行 EMQX 的机器)硬件配置

8vCPUs | 8GB | c1.2xlarge
CentOS7.0 64位

具体问题

场景大概,单个客户端最多订阅主题1000左右(目前有四个客户端连接),数据量每分钟最多10000条左右。
EMQX 会不定时的出现以下日志


还请看一下是什么原因导致的连接关闭,而且一个客户端关闭之后不能很好的重连,只能重启服务器

是 timeout (TCP 报文发送超时)。这种情况是因为客户端的消费速度不够快,跟不上给他发送数据的速度,导致消息积压在 TCP 缓存中,所以你同时看到了大量的 congestion 告警。

解决办法是不要让单个客户端处理太多的消息,增加客户端的数目、使用共享订阅或者采用其他的办法,比如不使用 MQTT 接收消息,改为 webhook 转发到后台服务处理。