维持通信链路长连接的方法、装置及终端制造方法及图纸

技术编号:14698650 阅读:123 留言:0更新日期:2017-02-24 09:39
本发明专利技术实施例公开了维持通信链路长连接的方法、装置及终端,属于通信技术领域。包括:心跳机制初始化;判断所述通信链路的稳定性是否符合预设;当所述通信链路的稳定性符合预设时,在数据库中匹配发送心跳包的时间间隔;当在所述数据库中匹配不到发送心跳包的时间间隔时,探测发送心跳包的时间间隔;以在所述数据库中匹配到的时间间隔发送心跳包;或者,以探测到的时间间隔发送心跳包。本发明专利技术实施例能够动态地确定终端设备向服务器发送心跳包的合适的时间间隔,维持了通信链路的长连接,提高了通信系统的运行效率,有利于服务器向终端设备实时推送服务。

【技术实现步骤摘要】

本专利技术实施例涉及通信
,尤其涉及维持通信链路长连接的方法、装置及终端
技术介绍
应用软件的服务器通过向终端设备推送服务(包括:聊天消息、日程提醒、活动预告、动态更新等),实现与用户之间的主动而及时的交互。服务器向终端设备推送服务的关键技术是,建立一条终端设备与服务器之间的通信链路,当有消息需要发送到终端设备时,服务器通过此通信链路发送消息。为了能够向终端设备实时推送服务,终端设备与服务器之间的通信链路必须是稳定而可靠的长连接。终端设备与应用软件的服务器之间一般通过建立基于TCP(TCP,TransmissionControlProtocol,传输控制协议)的长连接的通信链路进行通信。当终端设备与服务器之间长时间没有数据传输时,为了不让通信链路受到中间节点的影响而断开,终端设备需要向服务器发送心跳包(“心跳包”指的是,移动终端与服务器之间,相互通知自身在线状况的数据包),以保活通信链路。本专利技术的专利技术人在研究本申请的过程中发现,现有技术中,终端设备向服务器发送心跳包的时间间隔是固定的。但是,在不同的网络环境下,以及同一网络环境下的不同时间段,终端设备向服务器发送心跳包的合适时间间隔往往是不同的。如果发送心跳包的时间间隔过短,终端设备耗能过快,甚至引发终端设备的信令风暴。如果发送心跳包的时间间隔过长,则容易导致终端设备与服务器之间的通信链路中断,造成服务器不能及时向终端设备推送服务。因此,固定的发送心跳包的时间间隔不能让系统最有效率地运行,如何确定当前网络环境下终端设备向服务器发送心跳包的合适的时间间隔,是本方案要解决的问题。
技术实现思路
了能够确定终端设备向服务器发送心跳包的合适的时间间隔,本专利技术实施例采用了以下的技术方案。一方面,本专利技术实施例提供一种维持通信链路长连接的方法,为通信链路建立的心跳机制,包括:心跳机制初始化;判断所述通信链路的稳定性是否符合预设;当所述通信链路的稳定性符合预设时,在数据库中匹配发送心跳包的时间间隔;当在所述数据库中匹配不到发送心跳包的时间间隔时,探测发送心跳包的时间间隔;以在所述数据库中匹配到的时间间隔发送心跳包;或者,以探测到的时间间隔发送心跳包。另一方面,本专利技术实施例提供一种维持通信链路长连接的装置,包括:起始态工作模块,用于心跳机制初始化;欠稳定态工作模块,用于判断通信链路的稳定性是否符合预设;稳定态工作模块,用于当所述通信链路的稳定性符合预设时,获取发送心跳包的所述合适的时间间隔;正常态工作模块,用于以所述合适的时间间隔发送心跳包。另一方面,本专利技术实施例还提供一种维持通信链路长连接的终端,所述终端包括上述任意一种维持通信链路长连接的装置。另一方面,本专利技术实施例还提供一种非暂态(非易失性)计算机存储介质,所述计算机存储介质存储有计算机可执行指令,所述计算机可执行指令用于执行上述任意一种维持通信链路长连接的方法。另一方面,本专利技术实施例还提供一种电子设备,所述电子设备用于执行上述任意一种维持通信链路长连接的方法。另一方面,本专利技术实施例还提供一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,使所述计算机执行上述任意一种维持通信链路长连接的方法。与现有技术相比,本专利技术实施例有以下有益效果:本专利技术实施例,通过为通信链路建立动态的心跳机制,包括:心跳机制初始化;判断所述通信链路的稳定性是否符合预设;当所述通信链路的稳定性符合预设时,在数据库中匹配发送心跳包的时间间隔;当在所述数据库中匹配不到发送心跳包的时间间隔时,探测发送心跳包的时间间隔;以在所述数据库中匹配到的时间间隔发送心跳包;或者,以探测到的时间间隔发送心跳包。综上所述,本专利技术实施例能够动态地确定终端设备向服务器发送心跳包的合适的时间间隔,维持了通信链路的长连接,提高了通信系统的运行效率,有利于服务器向终端设备实时推送服务。附图说明图1为本专利技术的实施例一维持通信链路长连接的方法的流程图;图2为本专利技术的实施例二维持通信链路长连接的方法的流程图;图3为本专利技术的实施例二心跳机制的跃迁示意图;图4为本专利技术的实施例二心跳机制在各工作状态判断跃迁的示意图;图5为本专利技术的实施例三维持通信链路长连接的装置示意图;图6为本专利技术的实施例七电子设备的硬件结构示意图。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚而完整的描述。所描述的实施例是本专利技术一部分较佳的实施例,而不是全部可行的实施例。基于本专利技术中的各个实施例,本领域的任何技术人员在没有做出创造性劳动的前提下所获得的其他实施例,都应属于本专利技术保护的范围。除非另有定义,本文所使用的所有技术和科学术语与本专利技术
的技术人员通常理解的含义相同。本文中所使用的任何术语只是为了描述具体的实施例,并非旨在限制本专利技术的保护范围。实施例一:本专利技术的实施例一维持通信链路长连接的方法应用于移动终端等终端设备,该方法包括以下内容。为通信链路建立动态的心跳机制。所述心跳机制指的是,两个由通信链路连接的节点之间,发送心跳包,维持通信链路的长连接。参考图1,为本专利技术的实施例一维持通信链路长连接的方法的流程图。步骤101:心跳机制初始化。步骤102:判断所述通信链路的稳定性是否符合预设当所述通信链路的稳定性符合预设时,在数据库中匹配发送心跳包的时间间隔;当在所述数据库中匹配不到发送心跳包的时间间隔时,探测发送心跳包的时间间隔。步骤103:以在所述数据库中匹配到的时间间隔发送心跳包;或者,以探测到的时间间隔发送心跳包。本专利技术的实施例一所述维持通信链路长连接的方法,主要有以下技术效果:本专利技术的实施例一所述维持通信链路长连接的方法,通过为通信链路建立心跳机制,维持通信链路的长连接。包括:心跳机制初始化;判断所述通信链路的稳定性是否符合预设;当所述通信链路的稳定性符合预设时,在数据库中匹配发送心跳包的时间间隔;当在所述数据库中匹配不到发送心跳包的时间间隔时,探测发送心跳包的时间间隔;以在所述数据库中匹配到的时间间隔发送心跳包;或者,以探测到的时间间隔发送心跳包。综上所述,本专利技术的实施例一所述维持通信链路长连接的方法能够动态地确定终端设备向服务器发送心跳包的合适的时间间隔,维持了通信链路的长连接,提高了通信系统的运行效率,有利于服务器向终端设备实时推送服务。实施例二:本专利技术的实施例二维持通信链路长连接的方法应用于移动终端等终端设备,该方法包括以下内容。为通信链路建立心跳机制。所述心跳机制指的是,两个由通信链路连接的节点之间,发送心跳包,维持通信链路的长连接。参考图2,为本专利技术的实施例二维持通信链路长连接的方法的流程图。步骤201:心跳机制初始化。步骤202:根据设定的时间间隔发送设定次数的心跳包;当所述根据设定的时间间隔发送设定次数的心跳包全部成功时,所述通信链路的稳定性符合预设。步骤203:当所述通信链路的稳定性符合预设时,在数据库中匹配发送心跳包的时间间隔;当在所述数据库中匹配不到发送心跳包的时间间隔时,探测发送心跳包的时间间隔。步骤204:以在所述数据库中匹配到的时间间隔发送心跳包;或者,以探测到的时间间隔发送心跳包。在本专利技术的一些实施例中,所述方法还包括:预设探测起始的本文档来自技高网
...
维持通信链路长连接的方法、装置及终端

【技术保护点】
一种维持通信链路长连接的方法,其特征在于,为通信链路建立心跳机制,包括:心跳机制初始化;判断所述通信链路的稳定性是否符合预设;当所述通信链路的稳定性符合预设时,在数据库中匹配发送心跳包的时间间隔;当在所述数据库中匹配不到发送心跳包的时间间隔时,探测发送心跳包的时间间隔;以在所述数据库中匹配到的时间间隔发送心跳包;或者,以探测到的时间间隔发送心跳包。

【技术特征摘要】
1.一种维持通信链路长连接的方法,其特征在于,为通信链路建立心跳机制,包括:心跳机制初始化;判断所述通信链路的稳定性是否符合预设;当所述通信链路的稳定性符合预设时,在数据库中匹配发送心跳包的时间间隔;当在所述数据库中匹配不到发送心跳包的时间间隔时,探测发送心跳包的时间间隔;以在所述数据库中匹配到的时间间隔发送心跳包;或者,以探测到的时间间隔发送心跳包。2.根据权利要求1所述维持通信链路长连接的方法,其特征在于,所述判断所述通信链路的稳定性是否符合预设,包括:根据设定的时间间隔发送设定次数的心跳包;当所述根据设定的时间间隔发送设定次数的心跳包全部成功时,所述通信链路的稳定性符合预设。3.根据权利要求1所述维持通信链路长连接的方法,其特征在于,当所述以在所述数据库中匹配到的时间间隔发送心跳包失败时,探测发送心跳包的时间间隔。4.根据权利要求1-3任意一项所述维持通信链路长连接的方法,其特征在于,所述方法还包括:预设探测起始的时间间隔、时间间隔增加的步长、延长时间间隔的条件和停止探测的条件;所述探测发送心跳包的时间间隔,包括:以所述探测起始的时间间隔开始发送心跳包,当满足所述延长时间间隔的条件时,以所述时间间隔增加的步长延长发送心跳包的时间间隔继续发送心跳包,直至满足所述停止探测的条件;当根据上述探测过程,有≧1次发送心跳包成功时,以最后一次发送心跳包成功的时间间隔发送心跳包。5.根据权利要求4所述维持通信链路长连接的方法,其特征在于:所述延长时间间隔的条件为:发送1次心跳包成功;所述停止探测的条件为:发送2次心跳包失败。6.一种维持通信链路长连接的装置,其特征在于,包括:起始态工作模块,用于心跳机制初始化;欠稳定态工作模块,用于判断通信链路的稳定性是否符合预设;稳定态工作模块,用于当所述通信链路的稳定性符...

【专利技术属性】
技术研发人员:徐焰军陈轶飞李兵兵骆树萌
申请(专利权)人:乐视控股北京有限公司乐视致新电子科技天津有限公司
类型:发明
国别省市:北京;11

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

1