一种应用程序的心跳包控制方法和装置制造方法及图纸

技术编号:12225542 阅读:93 留言:0更新日期:2015-10-22 02:41
本发明专利技术实施例公开了一种应用程序的心跳包控制方法,包括:监测应用程序的运行状态;当所述应用程序为前台运行状态时,指示所述应用程序采用第一时间间隔发送心跳检测包至服务器;当所述应用程序为后台运行状态时,指示所述应用程序采用第二时间间隔发送心跳检测包至所述服务器;其中,所述第二时间间隔大于所述第一时间间隔。本发明专利技术实施例还公开了一种应用程序的心跳包的控制方法。采用本发明专利技术,提高应用程序对网络环境的适应性。

【技术实现步骤摘要】

本专利技术涉及互联网领域,尤其涉及一种应用程序的心跳包括控制方法和装置。
技术介绍
随着互联网技术的发展,软件厂商开发了各种各样运行于便携的移动终端之上的应用程序,这些应用程序可以通过无线方式(例如2G、3G、4G或WiFi等无线方式)接入互联网中的服务器,和传统的PC通过有线方式接入互联网不同,移动终端由于采用无线方式接入,移动终端的位置不固定,网络信号变化频繁,移动终端上的应用程序与互联网之间的网络连接状态十分复杂。移动终端和服务器的持续稳定的网络连接状态直接决定了用户体验,没有可靠的网络连接状态作为基础,服务器无法为应用程序提供良好的服务。因此,怎样保持应用程序和服务器的可靠的网络连接状态称为亟待解决的问题。目前心跳包技术被广泛应用于客户端和服务器之间,用于发现网络异常发现,在从多场合均可适用。心跳包技术的原理为:客户端周期性的采用固定的时间间隔向互联网中的服务器发送心跳检测包,客户端判断在预设时长内是否接收到服务器返回的心跳响应包,如果为否,客户端就认为与服务器之间的网络连接已恶化(例如超时、中断或堵塞),不再合适提供网络服务,然后客户端采用重连接或者重选服务器的方法来尝试恢复连接。从上述的心跳包技术的原理可以看出,在移动终端所处的网络环境十分复杂,如果采用固定的时间间隔发送心跳检测包的方式,设置的时间间隔太小,容易增加移动终端的处理开销,设置的时间间隔太大,又不能及时发现网络异常,无法适应网络环境的频繁变化。
技术实现思路
本专利技术实施例所要解决的技术问题在于,提供一种应用程序的心跳包控制方法和装置。可解决现有技术中采用固定时间间隔发送心跳检测包,无法使用网络环境的频繁变化的问题。为了解决上述技术问题,本专利技术实施例提供了一种应用程序的心跳包控制方法,包括:监测应用程序的运行状态;当所述应用程序为前台运行状态时,指示所述应用程序采用第一时间间隔发送心跳检测包至服务器;当所述应用程序为后台运行状态时,指示所述应用程序采用第二时间间隔发送心跳检测包至所述服务器;其中,所述第二时间间隔大于所述第一时间间隔。相应地,本专利技术实施例还提供了应用程序的心跳包控制装置,包括:监测模块,用于监测应用程序的运行状态;第一调整模块,用于当所述应用程序为前台运行状态时,指示所述应用程序采用第一时间间隔发送心跳检测包至服务器;第二调整模块,用于当所述应用程序为后台运行状态时,指示所述应用程序采用第二时间间隔发送心跳检测包至所述服务器;其中,所述第二时间间隔大于所述第一时间间隔。实施本专利技术实施例,具有如下有益效果:监测应用程序的运行状态,在不同的运行状态指示应用程序以不同的时间间隔向服务器发送心跳检测包,这样可以自适应的调整应用程序发送心跳检测包的时间间隔,能良好的匹配应用程序的网络环境。【附图说明】为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1是本专利技术实施例提供的一种直播网络架构示意图。图2是专利技术实施例提供的一种应用程序的心跳包控制方法的流程示意图;图3是本专利技术实施例提供的一种应用程序的心跳包控制方法的另一流程示意图;图4是本专利技术实施例提供的一种应用程序的心跳包控制装置的结构示意图;图5是本专利技术实施例提供的一种应用程序的心跳包控制装置的另一结构示意图。【具体实施方式】下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。为了更好理解本专利技术实施例公开的一种心跳包的控制方法和装置,下面先对本专利技术实施例适用的直播网络构架进行描述。请参阅图1,图1是本专利技术实施例公开的一种直播网络构架示意图。如图1所示,该直播网络构架可以包括服务器以及多个客户端,其中,月艮务器也被称后台服务器、组件服务器等,服务器可以通过互联网与多个客户端进行通信连接。在图1所示的直播网络构架中,多个客户端中的部分客户端可以作为主播客户端,而其余客户端可以作为观众客户端,主播客户端表示运行有主播应用程序的客户端,观众客户端表示运行有观众应用程序的客户端。本专利技术实施例中,频道简单来讲就是服务器创建的一种虚拟空间(或虚拟房间),位于该虚拟空间内的观众客户端可以不仅观看主播客户端的直播内容,还可以和主播客户端进行语音或文字的交互。主播客户端对接入其频道内的其余观众客户端不仅具有接入、踢出控制权,还具有直播主动权。本专利技术实施例中,主播客户端、观众客户端可以实现包括集合群聊、视频直播、频道K歌、在线游戏、在线影视等多种功能。在图1所示的直播网络构架中,主播客户端、观众客户端可以运行在包括但不限于移动电话、移动电脑、平板电脑、个人数字助理(Personal Digital Assistant, PDA)、媒体播放器、智能电视、智能手表、智能眼镜、智能手环等用户设备上。参见图2,为本专利技术实施例提供的一种应用程序的心跳包控制方法,在本专利技术实施例中,所述方法包括:S101、监测应用程序的运行状态。具体的,当启动运行客户端中的应用程序后,应用程序在客户端中的运行状态可以分为前台运行状态和后台运行状态。应用程序处于前台运行状态时,客户端需要显示应用程序的程序界面,此时占用较多的系统资源;应用程序处于后台运行状态时,客户端不需要显示应用程序的程序界面,此时占用较少的系统资源。客户端监测应用程序的运行状态的方法可以是,通过创建的监控线程来监测应用程序的运行状态,或者由应用程序监测自身的运行状态,当运行状态发生变更时,发送系统广播通知客户端自身的运行状态。当然也可以采用其他的方法监控应用程序的运行状态,本专利技术不作限制。其中,应用程序与网络应用程序,用于和互联网中的服务器进行通信,应用程序通过向服务器发送心跳检测包,服务器接收心跳检测包返回心跳响应包的形式来识别通信链路的网络状态。S102、当所述应用程序为前台运行状态时,指示所述应用程序采用第一时间间隔发送心跳检测包至服务器。具体的,根据SlOl监测的应用程序的运行状态,当应用程序为前台运行状态时,客户端指示应用程序采用第一时间间隔发送心跳检测包至服务器。具体过程可以是:客户端记录应用程序发送的每个心跳检测包的发送时刻和服务器返回的心跳响应包的接收时亥IJ。当应用程序由后台运行状态切换到前台运行状态时,客户端获取应用程序的上一心跳检测包的发送时刻tl,第一时间间隔为Tl,客户端指示应用程序在tl+Tl时刻发送当前心跳检测包,即当前心跳检测包和上一心跳检测包的时间间隔为第一时间间隔Tl。S103、当所述应用程序为后台运行状态时,指示所述应用程序采用第二时间间隔发送心跳检测包至所述服务器;其中,所述第二时间间隔大于所述第一时间间隔。具体的,根据SlOl监测到的应用程序的运行状态,当应用程序为后台运行状态时,客户端指示应用程序采用第二时间间隔发送心跳检测包至服务器,第二时间间隔大于第一时间间隔。当应用程序为后台应用本文档来自技高网...
一种应用程序的心跳包控制方法和装置

【技术保护点】
一种应用程序的心跳包控制方法,其特征在于,包括:监测应用程序的运行状态;当所述应用程序为前台运行状态时,指示所述应用程序采用第一时间间隔发送心跳检测包至服务器;当所述应用程序为后台运行状态时,指示所述应用程序采用第二时间间隔发送心跳检测包至所述服务器;其中,所述第二时间间隔大于所述第一时间间隔。

【技术特征摘要】

【专利技术属性】
技术研发人员:刘胜华王启明申动斌
申请(专利权)人:广州华多网络科技有限公司
类型:发明
国别省市:广东;44

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

1