心跳保活方法、电子设备、系统及介质技术方案

技术编号:24103694 阅读:37 留言:0更新日期:2020-05-09 14:34
本发明专利技术提供了一种心跳保活方法、电子设备、系统及介质,所述方法包括:建立发送队列;当检测到有目标数据包生成时,将所述目标数据包存储至所述发送队列;当检测到长连接可用时,发送所述发送队列中的数据包。本发明专利技术能够保证在高压长连接场景下,心跳包不会被其他数据包挤掉,进而避免导致对长连接的断连产生误判,且通过对心跳包的等待,也能够有效避免在心跳包返回速度慢时对长连接的断连产生误判。

Methods, electronic equipment, systems and media for heartbeat protection

【技术实现步骤摘要】
心跳保活方法、电子设备、系统及介质
本专利技术涉及互联网
,尤其涉及心跳保活方法、电子设备、系统及介质。
技术介绍
TCP(TransmissionControlProtocol,传输控制协议)长连接系统会在传输过程中遇到一些异常情况,如:TCP长连接所在的进程被杀死、网络NAT(NetworkAddressTranslation,网络地址转换)超时、网络状态发生变化(如移动网络切换、wifi切换等)、DHCP(DynamicHostConfigurationProtocol,动态主机配置协议)租期过期等。上述异常将导致TCP长连接的中断,而在数据传输的过程中,TCP长连接的中断将导致数据传输异常,因此,通常要采用检测心跳包的方式确定TCP长连接是否异常。但在高压TCP长连接的场景下,服务端需要对客户端发来的包进行丢包处理,如果丢掉了心跳包,便会对长连接的断连产生误判,影响长连接的可用性。
技术实现思路
本专利技术的主要目的在于提供心跳保活方法、电子设备、系统及介质,能够保证在高压长连接场景下,心跳包不本文档来自技高网...

【技术保护点】
1.一种心跳保活方法,其特征在于,所述方法包括:/n建立发送队列;/n当检测到有目标数据包生成时,将所述目标数据包存储至所述发送队列;/n当检测到长连接可用时,发送所述发送队列中的数据包。/n

【技术特征摘要】
1.一种心跳保活方法,其特征在于,所述方法包括:
建立发送队列;
当检测到有目标数据包生成时,将所述目标数据包存储至所述发送队列;
当检测到长连接可用时,发送所述发送队列中的数据包。


2.如权利要求1所述的心跳保活方法,其特征在于,所述方法还包括:
当检测到所述发送队列没有空闲位置时,确定所述目标数据包的类型;
当所述目标数据包为心跳包时,从所述发送队列中除心跳包之外的其他包中获取任意数据包,删除获取的数据包,并将所述目标数据包存储至所述发送队列;或者
当所述目标数据包为除心跳包之外的其他包时,丢弃所述目标数据包。


3.如权利要求2所述的心跳保活方法,其特征在于,在丢弃所述目标数据包后,所述方法还包括:
当接收到与所述目标数据包对应的请求指令时,重新生成所述目标数据包。


4.如权利要求1所述的心跳保活方法,其特征在于,所述方法还包括:
利用配置系统函数检测所述长连接是否可用。


5.如权利要求1所述的心跳保活方法,其特征在于,在确定所述长连接中断后,所述方法还包括:
关闭所述长连接;
建立新的长连接。

【专利技术属性】
技术研发人员:刘杰
申请(专利权)人:深圳市网心科技有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1