基于CMPP短信开发遇到的丢包事件处理

在昨晚七点到今天早上九点钟,基于mina网络通讯框架完成CMPP3.0协议长连接对接,代码在之前服务器中运行都不会出现丢包事件。

在肯定代码无误之下,找组长与运维同事协调查看是否服务器设置了接收包大小限制。在这次问题中发现mina与中国移动产生长连接,代码是不会在服务器生成端口来保持连接,在组长多次不信任下,查看服务器最终还是找不到端口,确认完代码无误和服务器没设置接收包限制,在运维同事帮助下,发现所使用的腾讯云服务器中,配置了防火墙。导致程序在接收数据包大于61byte的数据,后续数据全部丢失,在程序中就会出现初始化信息结构报null异常及读取错误。

配图:

基于CMPP短信开发遇到的丢包事件处理