客户端开启会话,然后客户端下线之后。还会有数据往它订阅的主题发送消息。但是客户端再次连接上线之后,客户端收到的消息有些会出现粘包,有些出现丢字节。这是为什么呢
会不会和开启会话有关,因为以前我好像没有发现这种问题,会不会是会话的数据太多,它们的Qos都是1,会不会和这个有关
- 还会收到消息,应该是你连接时
clean_session = false
以及没有设置Session Expiry Interval
(注意这个是 MQTT 5 协议才有的) 导致的
另外一种情况就是这个主题不止一个订阅者
2.TCP 粘包是正常行为,或者说 TCP 本来就没有包这个概念,丢字节的问题,建议检查下客户端代码