环境
- EMQX 版本:4.3.1
- 操作系统版本:
重现此问题的步骤
- 使用Spring integration 5.5.14 集成EMQ,1500次循环调用发送方法发送Qos=0的消息到同一主题,消费端是MQTTX客户端进行的接收。
- 发现1500条消息客户端大概1s内全部把1500条消息全部扔进了BufferedOutputStream并且flush,随后发送了心跳PINGREQ,等待PINGACK回来,超时检查机制等一个周期PINGACK还未回来主动抛出异常关闭了Socket,随即MQTTX客户接收消息还未接收完毕,此时再无剩余消息被接收。
- 为了效果明显KeepAliveInterval可以调小一点10s。