6万emqx设备批量下线,接收emqx服务消息的客户端离线并重新连接,导致离线消息丢失

没有很好的解决方案,可以试试用共享订阅来加大处理能力:

新版本也会有

假设(夸张)你使用非常厉害的手段让一个客户端处理能力能达到 1 秒 10W 个包。那就是一个包处理只要 10微秒 = 0.01毫秒,这 10 微秒还要算上网络延时。

一个客户端的消费能力都是有限的。客户端的 tcp socket 有累积。一旦socket的缓冲区满了,就会反压到 emqx 服务器,让他发不出 mqtt 包。这时还有很多 mqtt 包涌到这个事件来,积累到一定量就会丢掉。