心跳代理方法和装置制造方法及图纸

技术编号:32513936 阅读:20 留言:0更新日期:2022-03-02 11:04
本申请公开了一种心跳代理方法和电子设备,属于通信领域。心跳代理方法应用于电子设备,电子设备包括心跳代理模块;心跳代理方法包括:电子设备中的M个应用程序发送代理请求消息至心跳代理模块,代理请求消息中携带M个应用程序对应的服务器地址,以及M个应用程序与其对应的服务器之间的心跳通信格式;心跳代理模块将所述M个应用程序中的至少一个应用程序对应的服务器地址,以及至少一个应用程序与其对应的服务器之间的心跳通信格式存储至代理池;心跳代理模块每隔目标时长根据代理池中存储的应用程序对应的服务器地址和心跳通信格式,向代理池中存储的应用程序对应的服务器发送相应的第一心跳包,目标时长是基于当前时刻网络状况确定的。刻网络状况确定的。刻网络状况确定的。

【技术实现步骤摘要】
心跳代理方法和装置


[0001]本申请属于通信
,具体涉及一种心跳代理方法和装置。

技术介绍

[0002]随着手机应用程序越来越多,用户手机里安装了各种需要即时通信的软件,比如即时聊天类、收付款类、社交类、物联网(Internet of Things,IOT)类等等,这一类软件有一个共性,就是需要不断的使用各种手段在手机端保活自己,同时维持至少一条传输控制协议(Transmission Control Protocol,TCP)长连接跟服务器的通信,以确保消息触达的及时性。
[0003]为了维持各自的长连接,各类应用程序会不定时得向各自服务器发送ping包,相应服务器会回复对应的pong包,俗称心跳包,对应的ping

pong动作称为心跳,用来检查长连接的健康情况,也确保没有意外掉线,或者没有被各个网络节点的网络地址转换(Network Address Translation,NAT)路由器掐断等。
[0004]由于目前各类应用程序繁多,都各自维护其长连接,这么一来给手机的系统环境带来了很多无序的唤醒动作以及网络请求动作,即使各大手机厂商都对各类应用程序的唤醒动作做了对齐处理,可是依然增加了手机的功耗,而且各应用程序为了发送心跳包还做了很多保活动作,应用程序在后台不断运行占用手机的资源较多,影响手机运行性能。

技术实现思路

[0005]本申请实施例的目的是提供一种心跳代理方法和装置,能够解决对系统无序的唤醒动作过多,电子设备的功耗过高,影响电子设备运行性能的问题。
[0006]第一方面,本申请实施例提供了一种心跳代理方法,该方法包括:
[0007]所述电子设备中的M个应用程序发送代理请求消息至所述心跳代理模块,所述代理请求消息中携带所述M个应用程序对应的服务器地址,以及所述M个应用程序与其对应的服务器之间的心跳通信格式;
[0008]所述心跳代理模块将所述M个应用程序中的至少一个应用程序对应的服务器地址,以及所述至少一个应用程序与其对应的服务器之间的心跳通信格式存储至代理池;
[0009]所述心跳代理模块每隔目标时长根据所述代理池中存储的应用程序对应的服务器地址和心跳通信格式,向所述代理池中存储的应用程序对应的服务器发送相应的第一心跳包,所述目标时长是基于当前时刻网络状况确定的。
[0010]第二方面,本申请实施例提供了一种心跳代理装置,该装置包括:
[0011]第一发送模块,用于使所述电子设备中的M个应用程序发送代理请求消息至所述心跳代理模块,所述代理请求消息中携带所述M个应用程序对应的服务器地址,以及所述M个应用程序与其对应的服务器之间的心跳通信格式;
[0012]存储模块,用于使所述心跳代理模块将所述M个应用程序中的至少一个应用程序对应的服务器地址,以及所述至少一个应用程序与其对应的服务器之间的心跳通信格式存
储至代理池;
[0013]第二发送模块,用于使所述心跳代理模块每隔目标时长根据所述代理池中存储的应用程序对应的服务器地址和心跳通信格式,向所述代理池中存储的应用程序对应的服务器发送相应的第一心跳包,所述目标时长是基于当前时刻网络状况确定的。
[0014]第三方面,本申请实施例提供了一种电子设备,该电子设备包括处理器、存储器及存储在所述存储器上并可在所述处理器上运行的程序或指令,所述程序或指令被所述处理器执行时实现如第一方面所述的方法的步骤。
[0015]第四方面,本申请实施例提供了一种可读存储介质,所述可读存储介质上存储程序或指令,所述程序或指令被处理器执行时实现如第一方面所述的方法的步骤。
[0016]第五方面,本申请实施例提供了一种芯片,所述芯片包括处理器和通信接口,所述通信接口和所述处理器耦合,所述处理器用于运行程序或指令,实现如第一方面所述的方法的步骤。
[0017]在本申请实施例中,电子设备中的应用程序发送的代理请求消息至心跳代理模块,整合了电子设备中各个应用程序的心跳代理需求,每隔目标时长根据代理池中存储的应用程序对应的服务器地址和心跳通信格式,向代理池中存储的应用程序对应的服务器发送相应的第一心跳包,进行统一的心跳包发送,相比于相关技术中各应用程序各自发送心跳包至对应的服务器,减少了对系统无序的唤醒动作,降低了电子设备的功耗,提高电子设备运行性能。
附图说明
[0018]图1是本申请实施例提供的心跳代理方法的流程示意图之一;
[0019]图2是本申请实施例提供的心跳代理方法的流程示意图之二;
[0020]图3是本申请实施例提供的心跳代理装置的结构示意图;
[0021]图4为本申请实施例提供的电子设备的结构示意图;
[0022]图5为本申请实施例提供的电子设备的硬件结构示意图。
具体实施方式
[0023]下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员获得的所有其他实施例,都属于本申请保护的范围。
[0024]本申请的说明书和权利要求书中的术语“第一”、“第二”等是用于区别类似的对象,而不用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施,且“第一”、“第二”等所区分的对象通常为一类,并不限定对象的个数,例如第一对象可以是一个,也可以是多个。此外,说明书以及权利要求中“和/或”表示所连接对象的至少其中之一,字符“/”,一般表示前后关联对象是一种“或”的关系。
[0025]下面结合附图,通过具体的实施例及其应用场景对本申请实施例提供的心跳代理方法进行详细地说明。图1为本申请实施例提供的心跳代理方法的流程示意图之一,如图1所示,所述心跳代理方法包括以下步骤:
[0026]步骤100、电子设备中的M个应用程序发送代理请求消息至心跳代理模块,代理请求消息中携带M个应用程序对应的服务器地址,以及M个应用程序与其对应的服务器之间的心跳通信格式。
[0027]可选地,M个应用程序为有代理需求的应用程序。有代理需求的M个应用程序将代理请求消息发送给心跳代理模块,请求心跳代理模块代理M个应用程序的心跳包发送和接收业务,同时将M个应用程序中各个应用程序对应的服务器地址,以及各个应用程序与其对应的服务器之间的心跳通信格式发送给心跳代理模块。
[0028]可选地,心跳代理模块为系统框架层中的一段程序,其中,系统框架层为系统应用层与系统底层中间的一个层。
[0029]可以理解地,相关技术中,为了维持各自的长连接,应用程序会不定时地向服务器发送第一心跳包,并接收服务器回复的对应的第二心跳包,而本方案,心跳代理模块统一负责有代理需求的应用程序的心跳包发送和接收业务,对各应用程序的心跳包发送和接收进行统一管理。
[0030]步骤101、心跳代理模块将M个应用程序中的至本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种心跳代理方法,其特征在于,应用于电子设备,所述电子设备包括心跳代理模块;所述方法包括:所述电子设备中的M个应用程序发送代理请求消息至所述心跳代理模块,所述代理请求消息中携带所述M个应用程序对应的服务器地址,以及所述M个应用程序与其对应的服务器之间的心跳通信格式;所述心跳代理模块将所述M个应用程序中的至少一个应用程序对应的服务器地址,以及所述至少一个应用程序与其对应的服务器之间的心跳通信格式存储至代理池;所述心跳代理模块每隔目标时长根据所述代理池中存储的应用程序对应的服务器地址和心跳通信格式,向所述代理池中存储的应用程序对应的服务器发送相应的第一心跳包,所述目标时长是基于当前时刻网络状况确定的;其中,M为正整数。2.根据权利要求1所述的心跳代理方法,其特征在于,所述向所述代理池中存储的应用程序对应的服务器发送相应的第一心跳包之后,还包括:所述心跳代理模块在未接收到所述代理池中的第一应用程序对应的第二心跳包,且所述第一应用程序的进程处于保活状态的情况下,向所述第一应用程序发送服务器无响应消息;其中,所述第二心跳包为服务器对所述第一心跳包进行响应时发送的数据包,所述服务器无响应消息用于指示所述第一应用程序进行掉线处理。3.根据权利要求1所述的心跳代理方法,其特征在于,所述心跳代理模块将所述M个应用程序中的至少一个应用程序对应的服务器地址,以及所述至少一个应用程序与其对应的服务器之间的心跳通信格式存储至代理池,包括:对所述M个应用程序的代理请求消息进行授权检查;将所述授权检查的结果通过的至少一个应用程序对应的服务器地址,以及该所述至少一个应用程序与其对应的服务器之间的心跳通信格式存储至代理池。4.根据权利要求1所述的心跳代理方法,其特征在于,还包括:在所述代理池中的第二应用程序退出后台的情况下,冻结所述第二应用程序。5.根据权利要求1所述的心跳代理方法,其特征在于,所述电子设备中的M个应用程序发送代理请求消息至所述心跳代理模块,包括:在所述电子设备中的M个应用程序与其对应的服务器连接成功的情况下,所述M个应用程序通过调用第一软件工具开发包接口,向所述心跳代理模块发送所述代理请求消息;其中,所述第一软件工具开发包用于提供实现心跳代理功...

【专利技术属性】
技术研发人员:刘永填
申请(专利权)人:维沃移动通信有限公司
类型:发明
国别省市:

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

1