出现invalid_topic,然后EMQX进行socket_force_closed

我是使用MCU+4G模块+AT指令+EMQX进行项目的开发,我的代码是使用AT+QMTPUB=0,0,0,0,向服务器发送数据,逻辑是MCU上一条指令发送并4G模块回复了+QMTPUB,MCU再进行下一条指令的发送(4G模块回复了**+QMTPUB**,代表着上一条指令执行成功,服务器成功收到数据)。从逻辑上讲,4G模块应该不会与服务器断开连接,我通过逻辑逻辑分析仪图看到我发指令的时刻也没有问题,但是还是与服务器断开连接了

下面EMQX日志追踪显示invalid_topic和socket_force_closed:

通过查看服务器的日志数据,发现是两条指令的数据粘合在一起了:

这是监控服务器端口的日志:

请问一下:
1、按照4G模块的使用手册以及MQTT协议的说明书,4G模块回复了**+QMTPUB就表示上一包数据已经发送完了,服务器接收到上一包的数据,为什么两条指令的数据还会粘合在一起?这对于emqx来说是不合法的mqtt报文吗?
2、即使是不合法的mqtt报文,为什么emqx要强制断开socket?
3、以上emqx在4G模块传输数据的过程中断开连接,会严重影响我们项目中4G模块的单位时间丢包率,有什么方法将
emqx强制断开socket这个异常处理**进行关闭呢,即受到正确的MQTT报文进行解析,受到不合法MQTT报文跳过?

第三个图放错了,应该是下面这个: