CN113518013B - 一种实现心跳机制的处理方法及装置 - Google Patents
一种实现心跳机制的处理方法及装置 Download PDFInfo
- Publication number
- CN113518013B CN113518013B CN202010272561.2A CN202010272561A CN113518013B CN 113518013 B CN113518013 B CN 113518013B CN 202010272561 A CN202010272561 A CN 202010272561A CN 113518013 B CN113518013 B CN 113518013B
- Authority
- CN
- China
- Prior art keywords
- version
- heartbeat
- configuration
- configuration information
- application
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 230000007246 mechanism Effects 0.000 title claims abstract description 40
- 238000003672 processing method Methods 0.000 title claims abstract description 22
- 238000000034 method Methods 0.000 claims abstract description 25
- 238000012545 processing Methods 0.000 claims abstract description 10
- 238000004891 communication Methods 0.000 claims description 16
- 230000006870 function Effects 0.000 claims description 14
- 230000000694 effects Effects 0.000 abstract description 8
- 230000008569 process Effects 0.000 abstract description 4
- 230000008859 change Effects 0.000 description 8
- 238000004590 computer program Methods 0.000 description 6
- 238000001514 detection method Methods 0.000 description 6
- 230000003111 delayed effect Effects 0.000 description 5
- 230000008901 benefit Effects 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 238000012423 maintenance Methods 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000013507 mapping Methods 0.000 description 3
- 238000013481 data capture Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000008034 disappearance Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000011022 operating instruction Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/10—Active monitoring, e.g. heartbeat, ping or trace-route
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/085—Retrieval of network configuration; Tracking network configuration history
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Cardiology (AREA)
- General Health & Medical Sciences (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明公开了一种实现心跳机制的处理方法及装置,涉及互联网技术领域,为解决现有技术中服务端不能及时有效地将变更数据传输至终端的问题而发明。该方法主要包括:获取终端配置信息的配置心跳版本,并在版本存储地址中保存配置心跳版本;根据终端请求中的应用配置信息,查找应用配置信息对应的版本存储地址;如果存在与应用配置信息对应的版本存储地址,且应用配置信息对应的版本存储地址存储的配置心跳版本与应用配置信息的应用心跳版本相同,则响应终端请求,获取并发送与应用配置信息对应的版本存储地址存储的配置心跳版本。该方法主要应用于服务端与终端之间探活的过程中。
Description
技术领域
本发明涉及互联网技术领域,特别是涉及一种实现心跳机制的处理方法及装置。
背景技术
随着网络技术的发展,终端和服务端之间为了相互能够知道对方的实时状态,通常采用心跳机制进行探活。心跳机制是指在消息变更通知的业务场景下,终端每隔一段固定时间向服务端请求询问是否存在消息变更,如果存在变更则终端接收到心跳消息后再请求获取真正的变更数据。当服务端每次消息变更时,都会通过心跳的变更来告知终端。
现有技术中,服务端采用实时下发的方式,将变更数据下发给终端。如果在终端数量极大的网络架构下,如果下发时处于全网短时间的网络峰值,那么服务端不能及时有效地将变更数据传输至终端。
发明内容
有鉴于此,本发明提供一种实现心跳机制的处理方法及装置,主要目的在于解决现有技术中服务端不能及时有效地将变更数据传输至终端的问题。
依据本发明一个方面,提供了一种实现心跳机制的处理方法,包括:
获取终端配置信息的配置心跳版本,并在版本存储地址中保存所述配置心跳版本;
根据终端请求中的应用配置信息,查找所述应用配置信息对应的版本存储地址;
如果存在与所述应用配置信息对应的版本存储地址,且所述应用配置信息对应的版本存储地址存储的配置心跳版本与所述应用配置信息的应用心跳版本相同,则响应所述终端请求,获取并发送与所述应用配置信息对应的版本存储地址存储的配置心跳版本。
进一步地,所述在版本存储地址中保存所述配置心跳版本,包括:
在所述版本存储地址中,设置配置HASH桶,并按照预置规则为所述配置HASH桶进行编号;
以所述配置心跳版本为key值,采用哈希函数计算所述配置心跳版本的配置桶编号;
根据所述配置桶编号,为所述配置心跳版本分配所述配置HASH桶;
在所述配置HASH桶中保存所述配置心跳版本。
进一步地,所述在版本存储地址中保存所述配置心跳版本之后,所述方法包括:
以所述配置心跳版本的过期时刻,标识保存所述配置心跳版本的配置HASH桶,所述过期时刻是指所述终端配置信息有效期的终止时刻;
如果当前时刻大于所述过期时刻,则删除所述保存配置心跳版本的配置HASH桶。
进一步地,所述根据终端请求中的应用配置信息,查找所述应用配置信息对应的版本存储地址,包括:
获取所述应用配置信息的应用心跳版本;
以所述应用心跳版本为key值,采用哈希函数计算所述应用心跳版本所述的应用桶编号;
如果不存在所述应用桶编号对应的配置HASH桶,则确定不存在与所述应用配置信息对应的版本存储地址;
如果存在所述应用桶编号对应的配置HASH桶,则确定存在所述应用配置信息对应的版本存储地址。
进一步地,所述根据终端请求中的应用配置信息,查找所述应用配置信息对应的版本存储地址之后,所述方法还包括:
如果不存在与所述应用配置信息对应的版本存储地址,或者,所述应用配置信息对应的版本存储地址存储的配置心跳版本与所述应用配置信息的应用配置心跳版本不相同,则响应所述终端请求,获取并发送所述过期时刻与终端请求时刻的时间差最大的所述配置心跳版本。
进一步地,所述获取并发送所述过期时刻与终端请求时刻的时间差最大的所述配置心跳版本之后,所述方法还包括:
如果检测到所述终端发送的配置更新请求,则查找并发送待更新配置,所述待更新配置是指所述过期时刻与更新请求时刻的时间差最大的所述配置心跳版本对应的所述终端配置信息。
依据本发明另一个方面,提供了一种实现心跳机制的处理装置,包括:
保存模块,用于获取终端配置信息的配置心跳版本,并在版本存储地址中保存所述配置心跳版本;
查找模块,用于根据终端请求中的应用配置信息,查找所述应用配置信息对应的版本存储地址;
发送模块,用于如果存在与所述应用配置信息对应的版本存储地址,且所述应用配置信息对应的版本存储地址存储的配置心跳版本与所述应用配置信息的应用心跳版本相同,则响应所述终端请求,获取并发送与所述应用配置信息对应的版本存储地址存储的配置心跳版本。
根据本发明的又一方面,提供了一种存储介质,所述存储介质中存储有至少一可执行指令,所述可执行指令使处理器执行如上述实现心跳机制的处理方法对应的操作。
根据本发明的再一方面,提供了一种计算机设备,包括:处理器、存储器、通信接口和通信总线、所述处理器、所述存储器和所述通信接口通过所述通信总线完成相互间的通信;
所述存储器用于存放至少一可执行指令,所述可执行指令使所述处理器执行上述实现心跳机制的处理方法对应的操作。
根据本发明的再一方面,提供了一种计算机程序产品,包括存储在非暂态计算机可读存储介质上的计算程序,该计算机程序包括程序指令,当该程序指令被计算机执行时,使该计算机执行上述实现心跳机制的处理方法对应的操作。
借由上述技术方案,本发明实施例提供的技术方案至少具有下列优点:
本发明提供了一种实现心跳机制的处理方法及装置,首先获取终端配置信息的配置心跳版本,并在版本存储地址中保存配置心跳版本,然后根据终端请求中的应用配置信息,查找应用配置信息对应的版本存储地址,如果存在与应用配置信息对应的版本存储地址,且应用配置信息对应的版本存储地址中存储的配置心跳版本与应用配置信息的应用心跳版本相同,则响应终端请求,获取并发送与应用配置信息对应的版本存储地址存储的配置心跳版本。与现有技术相比,本发明实施例通过终端配置信息的配置心跳版本,也就是心跳探活机制探测终端的应用置信息是否保存在服务端的版本存储地址中,如果存在则将终端正在使用的配置心跳版本返回至中终端,也就是最新的配置心跳版本延迟发送至终端。因此不会造成服务端同时向大量终端发送配置心跳版本消息,也就不会产生短时间内的全网网络峰值,提高服务端下发消息的到达率。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1示出了本发明实施例提供的一种实现心跳机制的处理方法流程图;
图2示出了本发明实施例提供的另一种实现心跳机制的处理方法流程图;
图3示出了本发明实施例提供的一种实现心跳机制的处理装置组成框图;
图4示出了本发明实施例提供的另一种实现心跳机制的处理装置组成框图;
图5示出了本发明实施例提供的一种计算机设备的结构示意图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
随着网络技术的发展,终端和服务端之间为了能够知道对方的实时状态,通常采用心跳机制进行探活。本发明实施例通过在服务端设置版本检测方式,实现网络中出现网络峰值时,服务端能及时有效地将变更数据传输至终端。本发明实施例提供了一种实现心跳机制的处理方法,如图1所示,该方法包括:
101、获取终端配置信息的配置心跳版本,并在版本存储地址中保存配置心跳版本。
服务端能够为终端的某些特定软件提供服务,例如游戏服务器,浏览器服务器,企业服务器等等。为了更好地服务终端,服务器不断地为特定软件更新设置,其更新方式是将服务器中的终端配置信息下行发送至终端,经终端安装更新后实现。在服务器提供服务的过程中,不断地更新终端配置信息,每提供一次新的终端配置信息,就生成一个终端配置信息的配置心跳版本。以配置心跳版本区分不同的终端配置信息。示例性的,终端配置信息能够实现在地图上显示“月销售总量”,终端配置信息中包括为了实现该功能的数据抓取代码,数据展示代码,更新时间代码等等,配置心跳版本可以为scg0001、scg0002、scg0003等等。
由于终端配置信息通常占用内存较多,所以采用终端配置信息的配置心跳版本判断服务端是否对终端的应用配置信息提供服务。版本存储地址用于保存配置心跳版本,所有的配置心跳版本都保存在版本存储地址中,通过在服务端分配固定的存储地址,在获取配置心跳版本时只需检索版本存储地址即可,而不是检索服务端所有的存储地址,以此减少需要检索的存储地址,因此能够减少获取配置心跳版本时间,提高判断服务端是否为终端的应用配置信息提供服务的速率。
102、根据终端请求中的应用配置信息,查找应用配置信息对应的版本存储地址。
终端请求用于探测并反馈终端的处于有效期内的配置心跳版本。终端请求中携带的应用配置信息和应用配置版本,应用配置信息是终端当前应用的终端配置信息,应用配置信息属于终端配置信息。由于终端配置信息下发到终端后,终端配置信息的存储位置、是否还提供维护服务等信息可能发生改变,所以需要查找与应用配置信息对应的版本存储地址,查找结果可能是存在也可能是不存在。
103、如果存在与应用配置信息对应的版本存储地址,且应用配置信息对应的版本存储地址存储的配置心跳版本与应用配置信息的应用心跳版本相同,则响应终端请求,获取并发送与应用配置信息对应的版本存储地址存储的配置心跳版本。
服务端的版本存储地址中保存的配置心跳版本,是不断更新地,所以在查找到应用配置信息对应的版本存储地址后,还需判断应用配置信息对应的版本存储地址存储的配置新版版本与应用配置信息对应的应用心跳版本是否相同,如果存在于应用配置信息对应的版本存储地址,并且该版本存储地址中存储的配置心跳版本与应用心跳版本相同,说明服务端还在为应用配置信息提供服务,则将该版本存储地址存储的配置心跳版本发送给终端。
本发明提供了一种实现心跳机制的处理方法,首先获取终端配置信息的配置心跳版本,并在版本存储地址中保存配置心跳版本,然后根据终端请求中的应用配置信息,查找应用配置信息对应的版本存储地址,如果存在与应用配置信息对应的版本存储地址,且应用配置信息对应的版本存储地址中存储的配置心跳版本与应用配置信息的应用心跳版本相同,则响应终端请求,获取并发送与应用配置信息对应的版本存储地址存储的配置心跳版本。与现有技术相比,本发明实施例通过终端配置信息的配置心跳版本,也就是心跳探活机制探测终端的应用置信息是否保存在服务端的版本存储地址中,如果存在则将终端正在使用的配置心跳版本返回至终端,也就是最新的配置心跳版本延迟发送至终端。因此不会造成服务端同时向大量终端发送配置心跳版本消息,也就不会产生短时间内的全网网络峰值,提高服务端下发消息的到达率。
本发明实施例提供了另一种实现心跳机制的处理方法,如图2所示,该方法包括:
201、获取终端配置信息的配置心跳版本。
服务端能够为终端的某些特定软件提供服务,例如游戏服务器,浏览器服务器,企业服务器等等。为了更好地服务终端,服务器不断地为特定软件更新设置,其更新方式是将服务器中的终端配置信息下行发送至终端,经终端安装更新后实现。在服务器提供服务的过程中,不断地更新终端配置信息,每提供一次新的终端配置信息,就生成一个终端配置信息的配置心跳版本。以配置心跳版本区分不同的终端配置信息。示例性的,终端配置信息能够实现在地图上显示“月销售总量”,终端配置信息中包括为了实现该功能的数据抓取代码,数据展示代码,更新时间代码等等,配置心跳版本可以为scg0001、scg0002、scg0003等等。
由于终端配置信息通常占用内存较多,所以采用终端配置信息的配置心跳版本判断服务端是否对终端的应用配置信息提供服务。版本存储地址用于保存配置心跳版本,所有的配置心跳版本都保存在版本存储地址中,能够减少获取配置心跳版本时间,提高判断服务端是否为终端的应用配置信息提供服务的速率。
202、在版本存储地址中,设置配置HASH桶,并按照预置规则为配置HASH桶进行编号。
在版本存储地址中设置配置HASH桶,配置HASH桶用于存放配置心跳版本。服务端按照预置规则为每个配置HASH桶进行编号,以桶编号区分不同的配置HASH桶。为了将配置心跳版本分配不同的配置HASH桶,根据配置心跳版本的编码方式,确定配置HASH桶编号的计算方式。例如配置心跳版本是随机数字,随机数字包含0-9,而配置HASH桶数量有10个,则以随机数字对10取余,余数即为对应的配置HASH桶编号。
203、以配置心跳版本为key值,采用哈希函数计算配置心跳版本的配置桶编号。
将关键字key值作为自变量,通过哈希函数计算出的配置桶编号,也就是配置心跳版本的在版本存储地址中的具体存储位置。通过哈希函数的计算,使得key值与存储地址具有特定的映射关系。通过哈希函数的计算,映射关系需要满足key值能够均值的分布在存储地址中,还需要满足不同的key值映射至同一个存储地址时,具有下一个可用地址。根据映射关系的需求,哈希函数可以采用链接法、开放定址法或桶地址法。
204、根据配置桶编号,为配置心跳版本分配配置HASH桶。
配置桶编号与配置HASH桶是一一对应的,将配置心跳版本分配至配置桶编号对应的配置HASH桶,也就是确定配置桶编号对应的配置HASH桶为配置心跳版本的存储地址。
205、在配置HASH桶中保存配置心跳版本。
在保存过程中,还可以对配置心跳版本进行校验,以保证数据的准确性,其校验方式可以为奇偶校验、冗余循环校验、LRC校验、格雷码校验等等。以配置心跳版本的过期时刻,标识保存配置心跳版本的配置HASH桶。过期时刻是指终端配置信息有效期的终止时刻。如果当前时刻大于过期时刻,则删除保存配置心跳版本的配置HASH桶。
在配置心跳版本写入对应的配置HASH桶中,同时查找配置心跳版本的过期时刻,并以过期时刻标识配置HASH桶。在建立配置HASH桶时,可以设置桶的消失时间,消失时间是指当前时刻超过过期时刻配置HASH桶立即消失。配置HASH桶是随着时间的改变逐步消失的,也就是配置HASH桶一旦过期则配置HASH桶及在其保存的配置心跳版本和过期时刻都被删除。
206、根据终端请求中的应用配置信息,查找应用配置信息对应的版本存储地址。
终端请求用于探测并反馈终端的处于有效期内的配置心跳版本。终端请求中携带的应用配置信息和应用配置版本,应用配置信息是终端当前应用的终端配置信息,应用配置信息属于终端配置信息。终端配置信息下发到终端后,由于配置HASH桶的消失机制,终端配置信息的存储位置、是否还提供维护服务等信息可能发生改变,所以需要查找与应用配置信息对应的版本存储地址,查找结果可能是存在也可能是不存在。
查找应用配置信息对应的版本存储地址,具体包括:获取应用配置信息的应用心跳版本;以应用心跳版本为key值,采用哈希函数计算应用心跳版本的应用桶编号;如果不存在应用桶编号对应的配置HASH桶,则确定不存在与应用配置信息对应的版本存储地址;如果存在应用桶编号对应的配置HASH桶,则确定存在应用配置信息对应的版本存储地址。应用心跳版本对应的配置HASH桶的计算方式与配置心跳版本对应的配置HASH桶的计算方式相似,这里不再赘述。
配置HASH桶是随着时间的改变逐步消失的,也就是反馈至终端的配置心跳版本,不是在服务端产生新的配置心跳版本就立即下发至所有终端,而随着服务端对终端的应用配置信息不再维护逐步渐近式地下发至终端,通过渐近式心跳服务有效地平摊了心跳导致的网络峰值,利用配置HASH桶的自动过期机制,有效地起到削峰作用。
207、如果存在与应用配置信息对应的版本存储地址,且应用配置信息对应的版本存储地址存储的配置心跳版本与应用配置信息的应用心跳版本相同,则响应终端请求,获取并发送与应用配置信息对应的版本存储地址存储的配置心跳版本。
服务端的版本存储地址中保存的配置心跳版本,是不断更新地,所以在查找到应用配置信息对应的版本存储地址后,还需判断应用配置信息对应的版本存储地址存储的配置新版版本与应用配置信息对应的应用心跳版本是否相同,如果存在于应用配置信息对应的版本存储地址,并且该版本存储地址中存储的配置心跳版本与应用心跳版本相同,说明服务端还在为应用配置信息提供服务,则将该版本存储地址存储的配置心跳版本发送给终端。
208、如果不存在与应用配置信息对应的版本存储地址,或者,应用配置信息对应的版本存储地址存储的配置心跳版本与应用配置信息的应用配置心跳版本不相同,则响应终端请求,获取并发送过期时刻与终端请求时刻的时间差最大的配置心跳版本。
服务端的版本存储地址中保存的配置心跳版本,随着服务端对终端配置信息的更新而不断地更新,所以在查找到应用配置信息对应的版本存储地址后,还需判断应用配置信息对应的版本存储地址存储的配置新版版本与应用配置信息对应的应用心跳版本是否相同,如果不存在与应用配置信息对应的版本存储地址,或者,该版本存储地址中存储的配置心跳版本与应用心跳版本不相同,说明服务端不再为应用配置信息提供维护服务,则计算向终端发送的配置心跳版本。向终端发送的配置心跳版本,是过期时刻与终端请求时刻的时间差最大的配置心跳版本,也就是当前最新的终端配置信息的配置心跳版本。终端请求时刻是指终端发送终端请求的时刻。
如果不存在与应用配置信息对应的版本存储地址,则说明保存应用心跳版本的配置HASH桶已经消失,也就是应用配置信息已经失效,服务端不再维护应用配置信息。如果应用配置信息对应的版本存储地址存储的配置心跳版本与应用配置信息的应用配置心跳版本不相同,则说明保存应用心跳版本的配置HASH桶已经消失,也就是应用配置信息已经失效,服务端不再维护应用配置信息。计算所有配置HASH桶的过期时刻与终端请求时刻的时间差,并查找最大时间差,响应终端请求,获取并发送时间差最大的配置心跳版本。通过响应终端请求,获取并发送过期时刻与终端请求时刻的时间差最大的配置心跳版本,也就是告知终端,终端的当前应用配置信息服务器已经不再维护,并将当前最新的终端配置信息的配置心跳版本发送至终端。以便于终端根据反馈的最新配置心跳版本,请求服务端发送最新配置心跳版本对应的终端配置信息,更新终端自身的应用配置信息。
如果终端的应用配置信息已经过期,则需要请求重新发送终端配置信息,重新发送的待更新配置是有效期最长的终端配置信息。如果检测到终端发送的配置更新请求,则查找并发送待更新配置,待更新配置是指过期时刻与更新请求时刻的时间差最大的配置心跳版本对应的终端配置信息。终端向服务端发送配置更新请求时,还可以在配置更新请求中携带过期时刻与终端请求时刻的时间差最大的配置心跳版本,以请求服务端发送过期时刻与终端请求时刻的时间差最大的配置心跳版本对应的终端配置信息。
本申请判断服务端是否维护应用配置信息,通过应用心跳版本和配置心跳版本,这样极小数据量的信息传递实现。一方面避免服务端直接将终端配置信息传递到终端的大量数据传输,另一方面避免服务端同时将最新的终端配置信息传递到终端时同时传输造成的网络压力。由于服务端提供的终端配置信息是随着时间变化逐步过期的,而所有终端使用的应用配置信息不完全相同,所以同一时刻,与服务端对应的终端的应用配置信息不会同时被判定为服务端不再维护,因此不会造成服务端同时向所有终端发送配置心跳版本的消息,也就不会产生短时间内的全网网络峰值,提高服务端下发消息的到达率。相应的终端也不会同时向服务端发出配置更新请求,服务端也不会同时向大量终端发送终端配置信息,也就不会产生短时间内的全网网络峰值,提高服务端下发消息的到达率。
本发明提供了一种实现心跳机制的处理方法,首先获取终端配置信息的配置心跳版本,并在版本存储地址中保存配置心跳版本,然后根据终端请求中的应用配置信息,查找应用配置信息对应的版本存储地址,如果存在与应用配置信息对应的版本存储地址,且应用配置信息对应的版本存储地址中存储的配置心跳版本与应用配置信息的应用心跳版本相同,则响应终端请求,获取并发送与应用配置信息对应的版本存储地址存储的配置心跳版本。与现有技术相比,本发明实施例通过终端配置信息的配置心跳版本,也就是心跳探活机制探测终端的应用置信息是否保存在服务端的版本存储地址中,如果存在则将终端正在使用的配置心跳版本返回至中终端,也就是最新的配置心跳版本延迟发送至终端。因此不会造成服务端同时向大量终端发送配置心跳版本消息,也就不会产生短时间内的全网网络峰值,提高服务端下发消息的到达率。
进一步地,作为对上述图1所示方法的实现,本发明实施例提供了一种实现心跳机制的处理装置,如图3所示,该装置包括:
保存模块31,用于获取终端配置信息的配置心跳版本,并在版本存储地址中保存所述配置心跳版本;
查找模块32,用于根据终端请求中的应用配置信息,查找所述应用配置信息对应的版本存储地址;
发送模块33,用于如果存在与所述应用配置信息对应的版本存储地址,且所述应用配置信息对应的版本存储地址存储的配置心跳版本与所述应用配置信息的应用心跳版本相同,则响应所述终端请求,获取并发送与所述应用配置信息对应的版本存储地址存储的配置心跳版本。
本发明提供了一种实现心跳机制的处理装置,首先获取终端配置信息的配置心跳版本,并在版本存储地址中保存配置心跳版本,然后根据终端请求中的应用配置信息,查找应用配置信息对应的版本存储地址,如果存在与应用配置信息对应的版本存储地址,且应用配置信息对应的版本存储地址中存储的配置心跳版本与应用配置信息的应用心跳版本相同,则响应终端请求,获取并发送与应用配置信息对应的版本存储地址存储的配置心跳版本。与现有技术相比,本发明实施例通过终端配置信息的配置心跳版本,也就是心跳探活机制探测终端的应用置信息是否保存在服务端的版本存储地址中,如果存在则将终端正在使用的配置心跳版本返回至中终端,也就是最新的配置心跳版本延迟发送至终端。因此不会造成服务端同时向大量终端发送配置心跳版本消息,也就不会产生短时间内的全网网络峰值,提高服务端下发消息的到达率。
进一步地,作为对上述图2所示方法的实现,本发明实施例提供了另一种实现心跳机制的处理装置,如图4所示,该装置包括:
保存模块41,用于获取终端配置信息的配置心跳版本,并在版本存储地址中保存所述配置心跳版本;
查找模块42,用于根据终端请求中的应用配置信息,查找所述应用配置信息对应的版本存储地址;
发送模块43,用于如果存在与所述应用配置信息对应的版本存储地址,且所述应用配置信息对应的版本存储地址存储的配置心跳版本与所述应用配置信息的应用心跳版本相同,则响应所述终端请求,获取并发送与所述应用配置信息对应的版本存储地址存储的配置心跳版本。
进一步的,所述保存模块41,包括:
设置单元411,用于在所述版本存储地址中,设置配置HASH桶,并按照预置规则为所述配置HASH桶进行编号;
计算单元412,用于以所述配置心跳版本为key值,采用哈希函数计算所述配置心跳版本的配置桶编号;
分配单元413,用于根据所述配置桶编号,为所述配置心跳版本分配所述配置HASH桶;
保存单元414,用于在所述配置HASH桶中保存所述配置心跳版本。
进一步地,所述装置还包括:
标识单元415,用于所述在版本存储地址中保存所述配置心跳版本之后,以所述配置心跳版本的过期时刻,标识保存所述配置心跳版本的配置HASH桶,所述过期时刻是指所述终端配置信息有效期的终止时刻;
删除单元416,用于如果当前时刻大于所述过期时刻,则删除所述保存配置心跳版本的配置HASH桶。
进一步地,所述查找模块42,包括:
获取单元421,用于获取所述应用配置信息的应用心跳版本;
计算单元422,用于以所述应用心跳版本为key值,采用哈希函数计算所述应用心跳版本所述的应用桶编号;
确定单元423,用于如果不存在所述应用桶编号对应的配置HASH桶,则确定不存在与所述应用配置信息对应的版本存储地址;
所述确定单元423,还用于如果存在所述应用桶编号对应的配置HASH桶,则确定存在所述应用配置信息对应的版本存储地址。
进一步地,所述装置还包括:
所述发送模块43,还用于所述根据终端请求中的应用配置信息,查找所述应用配置信息对应的版本存储地址之后,如果不存在与所述应用配置信息对应的版本存储地址,或者,所述应用配置信息对应的版本存储地址存储的配置心跳版本与所述应用配置信息的应用配置心跳版本不相同,则响应所述终端请求,获取并发送所述过期时刻与终端请求时刻的时间差最大的所述配置心跳版本。
进一步地,所述装置还包括:
所述发送模块43,还用于所述获取并发送所述过期时刻与终端请求时刻的时间差最大的所述配置心跳版本之后,如果检测到所述终端发送的配置更新请求,则查找并发送待更新配置,所述待更新配置是指所述过期时刻与更新请求时刻的时间差最大的所述配置心跳版本对应的所述终端配置信息。
本发明提供了一种实现心跳机制的处理装置,首先获取终端配置信息的配置心跳版本,并在版本存储地址中保存配置心跳版本,然后根据终端请求中的应用配置信息,查找应用配置信息对应的版本存储地址,如果存在与应用配置信息对应的版本存储地址,且应用配置信息对应的版本存储地址中存储的配置心跳版本与应用配置信息的应用心跳版本相同,则响应终端请求,获取并发送与应用配置信息对应的版本存储地址存储的配置心跳版本。与现有技术相比,本发明实施例通过终端配置信息的配置心跳版本,也就是心跳探活机制探测终端的应用置信息是否保存在服务端的版本存储地址中,如果存在则将终端正在使用的配置心跳版本返回至中终端,也就是最新的配置心跳版本延迟发送至终端。因此不会造成服务端同时向大量终端发送配置心跳版本消息,也就不会产生短时间内的全网网络峰值,提高服务端下发消息的到达率。
根据本发明一个实施例提供了一种存储介质,所述存储介质存储有至少一可执行指令,该计算机可执行指令可执行上述任意方法实施例中的实现心跳机制的处理方法。
图5示出了根据本发明一个实施例提供的一种计算机设备的结构示意图,本发明具体实施例并不对计算机设备的具体实现做限定。
如图5所示,该计算机设备可以包括:处理器(processor)502、通信接口(Communications Interface)504、存储器(memory)506、以及通信总线508。
其中:处理器502、通信接口504、以及存储器506通过通信总线508完成相互间的通信。
通信接口504,用于与其它设备比如客户端或其它服务器等的网元通信。
处理器502,用于执行程序510,具体可以执行上述实现心跳机制的处理方法实施例中的相关步骤。
具体地,程序510可以包括程序代码,该程序代码包括计算机操作指令。
处理器502可能是中央处理器CPU,或者是特定集成电路ASIC(ApplicationSpecific Integrated Circuit),或者是被配置成实施本发明实施例的一个或多个集成电路。计算机设备包括的一个或多个处理器,可以是同一类型的处理器,如一个或多个CPU;也可以是不同类型的处理器,如一个或多个CPU以及一个或多个ASIC。
存储器506,用于存放程序510。存储器506可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。
程序510具体可以用于使得处理器502执行以下操作:
获取终端配置信息的配置心跳版本,并在版本存储地址中保存所述配置心跳版本;
根据终端请求中的应用配置信息,查找所述应用配置信息对应的版本存储地址;
如果存在与所述应用配置信息对应的版本存储地址,且所述应用配置信息对应的版本存储地址存储的配置心跳版本与所述应用配置信息的应用心跳版本相同,则响应所述终端请求,获取并发送与所述应用配置信息对应的版本存储地址存储的配置心跳版本,所述终端请求时刻是指所述终端发送终端请求的时刻。
根据本发明一个实施例提供的一种计算机程序产品,包括存储在非暂态计算机可读存储介质上的计算程序,该计算机程序包括程序指令,当该程序指令被计算机执行时,使该计算机执行上述任意方法实施例中的实现心跳机制的处理方法对应的操作。
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包括在本发明的保护范围之内。
Claims (8)
1.一种实现心跳机制的处理方法,其特征在于,包括:
获取终端配置信息的配置心跳版本,并在版本存储地址中保存所述配置心跳版本;
根据终端请求中的应用配置信息,查找所述应用配置信息对应的版本存储地址;
如果存在与所述应用配置信息对应的版本存储地址,且所述应用配置信息对应的版本存储地址存储的配置心跳版本与所述应用配置信息的应用心跳版本相同,则响应所述终端请求,获取并发送与所述应用配置信息对应的版本存储地址存储的配置心跳版本;
如果不存在与所述应用配置信息对应的版本存储地址,或者,所述应用配置信息对应的版本存储地址存储的配置心跳版本与所述应用配置信息的应用配置心跳版本不相同,则响应所述终端请求,获取并发送当前最新的终端配置信息所对应的配置心跳版本,以便于终端根据反馈的最新配置心跳版本,请求服务端发送最新配置心跳版本对应的终端配置信息,更新终端自身的应用配置信息。
2.如权利要求1所述的方法,其特征在于,所述在版本存储地址中保存所述配置心跳版本,包括:
在所述版本存储地址中,设置配置HASH桶,并按照预置规则为所述配置HASH桶进行编号;
以所述配置心跳版本为key值,采用哈希函数计算所述配置心跳版本的配置桶编号;
根据所述配置桶编号,为所述配置心跳版本分配所述配置HASH桶;
在所述配置HASH桶中保存所述配置心跳版本。
3.如权利要求2所述的方法,其特征在于,所述在版本存储地址中保存所述配置心跳版本之后,所述方法包括:
以所述配置心跳版本的过期时刻,标识保存所述配置心跳版本的配置HASH桶,所述过期时刻是指所述终端配置信息有效期的终止时刻;
如果当前时刻大于所述过期时刻,则删除所述保存配置心跳版本的配置HASH桶。
4.如权利要求2所述的方法,其特征在于,所述根据终端请求中的应用配置信息,查找所述应用配置信息对应的版本存储地址,包括:
获取所述应用配置信息的应用心跳版本;
以所述应用心跳版本为key值,采用哈希函数计算所述应用心跳版本的应用桶编号;
如果不存在所述应用桶编号对应的配置HASH桶,则确定不存在与所述应用配置信息对应的版本存储地址;
如果存在所述应用桶编号对应的配置HASH桶,则确定存在所述应用配置信息对应的版本存储地址。
5.如权利要求3所述的方法,其特征在于,所述获取并发送当前最新的终端配置信息所对应的配置心跳版本之后,所述方法还包括:
如果检测到所述终端发送的配置更新请求,则查找并发送待更新配置,所述待更新配置是指所述过期时刻与更新请求时刻的时间差最大的所述配置心跳版本对应的所述终端配置信息。
6.一种实现心跳机制的处理装置,其特征在于,包括:
保存模块,用于获取终端配置信息的配置心跳版本,并在版本存储地址中保存所述配置心跳版本;
查找模块,用于根据终端请求中的应用配置信息,查找所述应用配置信息对应的版本存储地址;
发送模块,用于如果存在与所述应用配置信息对应的版本存储地址,且所述应用配置信息对应的版本存储地址存储的配置心跳版本与所述应用配置信息的应用心跳版本相同,则响应所述终端请求,获取并发送与所述应用配置信息对应的版本存储地址存储的配置心跳版本;
如果不存在与所述应用配置信息对应的版本存储地址,或者,所述应用配置信息对应的版本存储地址存储的配置心跳版本与所述应用配置信息的应用配置心跳版本不相同,则响应所述终端请求,获取并发送当前最新的终端配置信息所对应的配置心跳版本,以便于终端根据反馈的最新配置心跳版本,请求服务端发送最新配置心跳版本对应的终端配置信息,更新终端自身的应用配置信息。
7.一种存储介质,其特征在于,所述存储介质中存储有至少一可执行指令,所述可执行指令使处理器执行如权利要求1-5中任一项所述的实现心跳机制的处理方法对应的操作。
8.一种计算机设备,其特征在于,包括:处理器、存储器、通信接口和通信总线、所述处理器、所述存储器和所述通信接口通过所述通信总线完成相互间的通信;
所述存储器用于存放至少一可执行指令,所述可执行指令使所述处理器执行如权利要求1-5中任一项所述的实现心跳机制的处理方法对应的操作。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010272561.2A CN113518013B (zh) | 2020-04-09 | 2020-04-09 | 一种实现心跳机制的处理方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010272561.2A CN113518013B (zh) | 2020-04-09 | 2020-04-09 | 一种实现心跳机制的处理方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113518013A CN113518013A (zh) | 2021-10-19 |
CN113518013B true CN113518013B (zh) | 2022-09-30 |
Family
ID=78060124
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010272561.2A Active CN113518013B (zh) | 2020-04-09 | 2020-04-09 | 一种实现心跳机制的处理方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113518013B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114167845B (zh) * | 2021-12-23 | 2023-12-05 | 广东嘉腾机器人自动化有限公司 | 一种plc与设备的通讯离线诊断方法和系统 |
CN115550222B (zh) * | 2022-10-12 | 2024-09-06 | 云知声智能科技股份有限公司 | 设备异常状态检测方法、系统、终端及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104657177A (zh) * | 2015-02-12 | 2015-05-27 | 北京深思数盾科技有限公司 | 程序自动更新方法 |
CN105553727A (zh) * | 2015-12-18 | 2016-05-04 | 北京奇虎科技有限公司 | 一种更新配置信息的方法、装置及系统 |
CN109725913A (zh) * | 2017-10-27 | 2019-05-07 | 北京京东尚科信息技术有限公司 | 数据更新的方法和装置 |
CN110222500A (zh) * | 2019-06-14 | 2019-09-10 | 深圳前海微众银行股份有限公司 | 版本管理方法、装置、设备及计算机可读存储介质 |
CN110502259A (zh) * | 2019-07-16 | 2019-11-26 | 视联动力信息技术股份有限公司 | 服务器版本升级方法、视联网系统、电子设备及存储介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105991720B (zh) * | 2015-02-13 | 2019-06-18 | 阿里巴巴集团控股有限公司 | 配置变更方法、设备及系统 |
-
2020
- 2020-04-09 CN CN202010272561.2A patent/CN113518013B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104657177A (zh) * | 2015-02-12 | 2015-05-27 | 北京深思数盾科技有限公司 | 程序自动更新方法 |
CN105553727A (zh) * | 2015-12-18 | 2016-05-04 | 北京奇虎科技有限公司 | 一种更新配置信息的方法、装置及系统 |
CN109725913A (zh) * | 2017-10-27 | 2019-05-07 | 北京京东尚科信息技术有限公司 | 数据更新的方法和装置 |
CN110222500A (zh) * | 2019-06-14 | 2019-09-10 | 深圳前海微众银行股份有限公司 | 版本管理方法、装置、设备及计算机可读存储介质 |
CN110502259A (zh) * | 2019-07-16 | 2019-11-26 | 视联动力信息技术股份有限公司 | 服务器版本升级方法、视联网系统、电子设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN113518013A (zh) | 2021-10-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10348809B2 (en) | Naming of distributed business transactions | |
CN111091429A (zh) | 电子票据标识分配方法及装置、电子票据生成系统 | |
US10944655B2 (en) | Data verification based upgrades in time series system | |
CN111159233B (zh) | 分布式缓存方法、系统、计算机设备以及存储介质 | |
CN107066570A (zh) | 数据管理方法及装置 | |
CN108243264A (zh) | 一种序列号生成方法及系统 | |
CN113518013B (zh) | 一种实现心跳机制的处理方法及装置 | |
CN111274252A (zh) | 一种区块链的数据上链方法、装置、存储介质和服务器 | |
CN110795395B (zh) | 文件部署系统和文件部署方法 | |
CN104980478A (zh) | 内容分发网络中缓存共享方法、设备及系统 | |
US20160321173A1 (en) | Automatic garbage collection thrashing monitoring | |
CN113055493A (zh) | 数据包处理方法、装置、系统、调度设备和存储介质 | |
CN113141264B (zh) | 高并发访问处理方法、装置以及存储介质 | |
CN109347766B (zh) | 一种资源调度的方法及装置 | |
CN114356970B (zh) | 一种存储系统资源缓存方法及装置 | |
CN114090338B (zh) | 一种请求处理方法、装置及电子设备 | |
CN113259492B (zh) | 服务请求转发方法及系统 | |
CN107203915B (zh) | 数据存储方法及装置 | |
CN115168440A (zh) | 数据读写方法、分布式存储系统、装置、设备和存储介质 | |
CN110995890B (zh) | 域名请求的调度方法及装置 | |
CN111913732A (zh) | 一种服务更新方法、装置及管理服务器、存储介质 | |
US20160034919A1 (en) | Collection and aggregation of large volume of metrics | |
CN113761420A (zh) | 一种页面展示方法、装置、业务服务器及存储介质 | |
CN109088913A (zh) | 请求数据的方法和负载均衡服务器 | |
CN111343101B (zh) | 服务器限流方法、装置、电子设备及可读存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |