CN112702227B - 心跳事件检测方法、装置、设备及计算机可读存储介质 - Google Patents
心跳事件检测方法、装置、设备及计算机可读存储介质 Download PDFInfo
- Publication number
- CN112702227B CN112702227B CN202011502152.3A CN202011502152A CN112702227B CN 112702227 B CN112702227 B CN 112702227B CN 202011502152 A CN202011502152 A CN 202011502152A CN 112702227 B CN112702227 B CN 112702227B
- Authority
- CN
- China
- Prior art keywords
- event
- heartbeat
- characteristic
- type
- event information
- 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
- 238000001514 detection method Methods 0.000 title claims abstract description 52
- 238000000034 method Methods 0.000 claims abstract description 41
- 230000009471 action Effects 0.000 claims abstract description 28
- 230000004931 aggregating effect Effects 0.000 claims abstract description 19
- 230000002776 aggregation Effects 0.000 claims description 23
- 238000004220 aggregation Methods 0.000 claims description 23
- 238000004590 computer program Methods 0.000 claims description 8
- 238000012545 processing Methods 0.000 abstract description 19
- 238000013500 data storage Methods 0.000 abstract description 5
- 230000001960 triggered effect Effects 0.000 description 17
- 238000010586 diagram Methods 0.000 description 10
- 230000003287 optical effect Effects 0.000 description 7
- 230000006870 function Effects 0.000 description 6
- 230000008569 process Effects 0.000 description 6
- 230000002829 reductive effect Effects 0.000 description 6
- 238000004364 calculation method Methods 0.000 description 5
- 238000007726 management method Methods 0.000 description 5
- 230000004083 survival effect Effects 0.000 description 5
- 238000000605 extraction Methods 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 238000012544 monitoring process Methods 0.000 description 3
- 238000007619 statistical method Methods 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 238000005034 decoration Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000000670 limiting effect Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 230000036961 partial effect Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000012163 sequencing technique 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3065—Monitoring arrangements determined by the means or processing involved in reporting the monitored data
- G06F11/3072—Monitoring arrangements determined by the means or processing involved in reporting the monitored data where the reporting involves data filtering, e.g. pattern matching, time or event triggered, adaptive or policy-based reporting
- G06F11/3082—Monitoring arrangements determined by the means or processing involved in reporting the monitored data where the reporting involves data filtering, e.g. pattern matching, time or event triggered, adaptive or policy-based reporting the data filtering being achieved by aggregating or compressing the monitored data
-
- 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/14—Network analysis or design
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Theoretical Computer Science (AREA)
- Signal Processing (AREA)
- Computer Vision & Pattern Recognition (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Cardiology (AREA)
- Debugging And Monitoring (AREA)
Abstract
本申请提供了心跳事件检测方法、装置、设备及计算机可读存储介质,涉及计算机网络领域,该方法通过按照预设时间间隔获取心跳事件系统产生的心跳事件序列;根据事件类型分别对心跳事件序列在各个时间间隔内的心跳事件进行聚合,并依据各类事件类型对应的过期时间生成事件类型对应的特征事件信息,将特征事件信息写入数据库;在过期时间到达时,检测数据库是否存在待检测事件类型对应的特征事件信息,若不存在,则触发所述待检测事件类型对应的下游动作。本技术方案实现了减少心跳事件检测的数据存储量和计算量,提高处理速度,能够适应高并发大流量的场景。
Description
技术领域
本申请涉及计算机网络领域,具体而言,本申请涉及一种心跳事件检测方法、装置、设备及计算机可读存储介质。
背景技术
心跳检测机制在现代的各种电子设备中得到广泛的应用,对于判断客户端的运行状态,及客户端和服务端之间的连续状态起到了不可或缺的作用。
当某件动作或事件触发时,会触发心跳,例如,订单支付成功会产生一个心跳,请求连接成功也会产生一个心跳等。在实际应用中,服务端通过检测对应的心跳事件来实时监测相关应用程序的运行状态,需要对心跳事件进行检测,为触发系统提供执行下游动作的参考,即检测到心跳事件出现时触发下游动作。
在相关的心跳事件检测技术中,尤其是针对不同时间窗口的心跳事件的处理,需要将心跳事件存入数据库,然后再对心跳事件进行处理,这种方式需要将大量的心跳事件存储到数据库,且数据处理量大、效率低,无法适应高并发的数据场景。
发明内容
本申请的目的旨在至少解决上述技术缺陷之一,特别是心跳事件处理量大、占用内存大、处理效率低的问题。
第一方面,本申请实施例提供一种心跳事件检测方法,包括以下步骤:
按照预设时间间隔获取心跳事件系统产生的心跳事件序列;
根据事件类型分别对所述心跳事件序列在各个时间间隔内的心跳事件进行聚合,并依据各类事件类型对应的过期时间生成所述事件类型对应的特征事件信息,将所述特征事件信息写入数据库;
在所述过期时间到达时,检测所述数据库是否存在待检测事件类型对应的未过期的特征事件信息,若不存在,则触发所述待检测事件类型对应的下游动作。
在一种可能的实现方式中,在所述过期时间到达之前,还包括:
获取在所述过期时间到达前写入新的特征事件信息,根据新写入的特征事件信息更新已写入到数据库的同一事件类型对应的特征事件信息的过期时间。
在一种可能的实现方式中,所述检测所述数据库是否存在待检测事件类型对应的未过期的特征事件信息的步骤之后,还包括:
根据所述过期时间将已过期的特征事件信息从所述数据库中删除。
在一种可能的实现方式中,所述依据各类事件类型对应的过期时间生成所述事件类型对应的特征事件信息的步骤之前,还包括:
获取心跳事件的事件类型特性,根据所述事件类型特性及数据库存储性能为相应的事件类型的心跳事件设置对应的过期时间。
在一种可能的实现方式中,所述根据事件类型分别对所述心跳事件序列在各个时间间隔内的心跳事件进行聚合,并依据各类事件类型对应的过期时间生成所述事件类型对应的特征事件信息的步骤包括:
对所述心跳事件序列中至少一个心跳事件进行特征识别,以确定所述心跳事件对应的事件类型;
将所述心跳事件序列中在各个时间间隔内的、同一事件类型的心跳事件进行聚合,得到与所述事件类型对应的聚合事件信息;
根据所述聚合事件信息及其所属事件类型对应的过期时间生成对应的特征事件信息。
在一种可能的实现方式中,所述对所述心跳事件序列中至少一个心跳事件进行特征识别,以确定所述心跳事件对应的事件类型的步骤包括:
提取所述心跳事件序列中至少一个心跳事件的特征关键字;
根据事件类型与特征关键字之间的对应关系,确定所述心跳事件对应的事件类型。
在一种可能的实现方式中,所述根据所述聚合事件信息及其所属事件类型对应的过期时间生成对应的特征事件信息的步骤包括:
将所述聚合事件信息写入数据库;
从所述数据库获取预先设置的与所述聚合特征信息所属事件类型对应的过期时间;
将所述聚合事件信息的特征关键字及其对应的过期时间按照预设数据结构进行存储,得到对应的特征事件信息。
在一种可能的实现方式中,所述获取在所述过期时间到达前写入新的特征事件信息,根据新写入的特征事件信息更新已写入到数据库的同一事件类型对应的特征事件信息的过期时间的步骤包括:
在所述过期时间到达前产生新的特征事件信息、且该特征事件信息的事件类型与数据库中已写入的特征事件信息的事件类型相同,则将所述新的特征事件信息合并到数据库中所述已写入的特征事件信息;
将所述已写入的所述特征事件信息的过期时间更新为所述新的特征事件信息的过期时间。
第二方面,本申请实施例提供一种心跳事件检测装置,包括:
序列获取模块,用于按照预设时间间隔获取心跳事件系统产生的心跳事件序列;
信息写入模块,用于根据事件类型分别对所述心跳事件序列在各个时间间隔内的心跳事件进行聚合,并依据各类事件类型对应的过期时间生成所述事件类型对应的特征事件信息,将所述特征事件信息写入数据库;
动作触发模块,用于在所述过期时间到达时,检测所述数据库是否存在待检测事件类型对应的未过期的特征事件信息,若不存在,则触发所述待检测事件类型对应的下游动作。
第三方面,本申请实施例提供一种电子设备,所述电子设备包括:
一个或多个处理器;
存储器;
一个或多个应用程序,其中所述一个或多个应用程序被存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个程序配置用于:执行根据第一方面所述的心跳事件检测方法。
第四方面,本申请实施例提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现第一方面所述的心跳事件检测方法。
本申请提供的技术方案带来的有益效果是:
通过按照预设时间间隔获取心跳事件系统产生的心跳事件序列;根据事件类型分别对心跳事件序列在各个时间间隔内的心跳事件进行聚合,并依据各类事件类型对应的过期时间生成所述事件类型对应的特征事件信息,将特征事件信息写入数据库;在过期时间到达时,检测数据库是否存在待检测事件类型对应的未过期的特征事件信息,若不存在,则触发所述待检测事件类型对应的下游动作,本技术方案将心跳事件序列中同一事件类型的心跳事件进行聚合处理后进行存储,减少心跳事件检测的数据存储量和计算量,尤其是心跳事件不存在(未发生)的心跳检测,利用聚合后生成的特征事件信息在过期时间对应的时间窗口进行检测,在过期时间达到后清除该特征事件信息,从而能够检测出心跳事件不存在的状况,不需要存储大量的心跳事件再进行统计分析,提高处理速度,能够适应高并发大流量的场景。
本申请附加的方面和优点将在下面的描述中部分给出,这些将从下面的描述中变得明显,或通过本申请的实践了解到。
附图说明
本申请上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
图1是本申请实施例提供的所适用的应用环境示意图;
图2是本申请实施例提供的一种心跳事件检测方法的流程图;
图3是本申请实施例提供的一种心跳事件检测方法的另一流程图;
图4是本申请实施例提供的以时间点D为参考点的特征事件信息的变化示意图;
图5是本申请实施例提供的一种心跳事件检测的又一方法流程图;
图6是本申请实施例提供的一种心跳事件检测装置的结构示意图;
图7是本申请实施例提供的一种用于心跳事件检测的电子设备的结构示意图。
具体实施方式
下面详细描述本申请的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本申请,而不能解释为对本申请的限制。
本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本申请的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的全部或任一单元和全部组合。
本技术领域技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语),具有与本申请所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语,应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非像这里一样被特定定义,否则不会用理想化或过于正式的含义来解释。
下面对本申请涉及的几个名词进行介绍和解释:
心跳事件:当一个事件发生时,产生一条上报数据,定义为“心跳”,程序中的心跳事件一般用来判断服务端和客户端之间的通信情况,如果没有了心跳,则说明服务端和客户端之间断开连接了,有的话则说明没有断开连接。
时间窗口:3小时内出现的任务执行成功事件,则此处的“3小时”为一个时间窗口的定义;又如,10分钟内出现的心跳时间,则此处的“10分钟”也为一个时间窗口的定义。由于时间窗口不同,当存在多个不同的时间窗口时,可以成为多变时间窗口。
过期时间:过期时间是一个UNIX时间戳,当键的过期时间来临时,服务器就会自动从数据库中删除这个键。例如,EXPIREAT<KEY><timestamp>:将键的过期时间设为timestamp所指定的秒数时间戳。
在对本申请实施例进行详细的解释说明之前,先对本申请实施例的应用场景予以介绍。本申请实施例提供的方法应用于心跳事件检测的场景中。
在互联网直播领域,通过监控心跳事件系统的心跳事件可以检测直播平台的运行状况。例如,一个订单支付成功,产生一个心跳;一个客户端请求连接成功,产生一个心跳;一个任务计算完成,也会产生一个心跳。直播平台的数据中心每秒可以产生约5000~20000个心跳事件。
如图1所示,图1是本申请实施例提供的所适用的应用环境示意图,以心跳事件系统为直播系统为例进行说明,直播系统包括客户端101和服务器102,用户在客户端101观看视频直播,在观看视频直播过程中,可以通过请求连接、赠送礼物、支付购买等产生心跳事件,并将心跳事件发送至服务器102。服务器102对客户端101发送的心跳事件进行缓存,由于心跳事件每时每刻都在产生,当心跳事件非常多时,容易造成故障,如数据丢失等,尤其是基于时间窗口的心跳事件的检测,则需要存储时间窗口内的心跳事件再进行心跳事件的数据统计和分析。基于此,对于高并发大流量的心跳事件系统,对资源的要求非常高,保存或统计的数据量非常大,往往达到百万级别,如10万个心跳事件则需要保存或查询10万个心跳事件的记录,对于某一类型的心跳事件不存在的检测,则不适用。例如,在某一场景下,需要检测1小时内未发现支付成功事件,则触发自动报警,若按照传统的检测方法,统计这1小时内的所有支出成功的事件,如8000,则需要保存这8000个心跳事件的记录,再确定不存在心跳事件进行报警,对系统资源如存储量和处理速度等要求非常高,难以适应高并发大流量的场景。
本申请提供的心跳事件检测方法、装置、设备及计算机可读存储介质,旨在解决现有技术的如上技术问题。
下面以具体地实施例对本申请的技术方案以及本申请的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。
下面将结合附图,对本申请的实施例进行详细描述。
图2是本申请实施例提供的一种心跳事件检测方法的流程图,该方法可以应用于服务器中。
S210、按照预设时间间隔获取心跳事件系统产生的心跳事件序列。
用户登录客户端做出各种操作时,往往会触发心跳事件的产生。按照心跳事件的产生时间或接收时间进行排序得到消息队列。
为了提高数据处理效率,按照预设时间间隔从心跳事件系统的消息队列中获取心跳事件序列。例如,按照每10秒钟的时间间隔获取心跳事件系统产生的心跳事件序列,该心跳事件序列包括20000个心跳事件。在这心跳事件序列中包括在这10秒时间内所产生的各种类型的心跳事件,如支付成功触发的心跳事件,请求连接成功触发的心跳事件等。
例如,心跳事件序列的心跳事件为:
H:keyword1:pay_success
H:keyword1:pay_success
H:keyword1:pay_success
H:keyword2:connect_success
H:keyword3:exit
S220、根据事件类型分别对所述心跳事件序列在各个时间间隔内的心跳事件进行聚合,并依据各类事件类型对应的过期时间生成所述事件类型对应的特征事件信息,将所述特征事件信息写入数据库。
心跳事件序列中存在多个事件类型的心跳事件,在本实施例中,对同一类型的心跳事件进行聚合。可选的,可以对指定事件类型的心跳事件进行聚合,也可以对所涉及的所有事件类型的心跳事件进行聚合。
在一实施例中,针对于指定事件类型的心跳事件进行聚合:首先设定需要进行检测的指定事件类型对应的关键字,如“keyword1”和“keyword2”,则从心跳事件序列中确定携带有“keyword1”和“keyword2”的心跳事件,筛选出来,并对这些心跳事件分别进行聚合。进一步的,还可以统计出进行聚合的同一事件类型的心跳事件的数量,如“keyword1:3”表示对“keyword1”对应的心跳事件进行聚合的事件数量为3,“keyword2:2”表示对“keyword1”对应的心跳事件进行聚合的事件数量为2。在另一实施例中,可以生成不带有聚合的事件数量的事件信息,该事件信息用于表示心跳事件序列中存在该事件类型的心跳事件,而不在于该事件类型的心跳事件的数量。
根据事件类型分别对心跳事件进行聚合后,根据各类事件类型对应的过期时间生成类事件类型对应的特征事件信息,例如,支付类型的心跳事件的过期时间为15分钟,请求连接类型的心跳事件的过期时间为20分钟等。
对于此,在依据各类事件类型对应的过期时间生成所述事件类型对应的特征事件信息的步骤之前,还包括:
获取心跳事件的事件类型特性,根据所述事件类型特性及数据库存储性能为相应的事件类型的心跳事件设置对应的过期时间。
在本实施例中,根据每种事件类型对应的记录,设定一个关键字或者多个关键字的组合,用于表征该关键字或关键字组合对应的事件类型,根据心跳事件所涉及的关键字,即可确定该心跳事件对应的事件类型。进一步的,由于不同事件类型涉及到不同的事件类型特性,该事件类型特性包括每秒中该类型事件产生的数量、响应速度的要求、时延性要求等,如支付类型的事件类型特性为:每秒支付心跳事件产生数量多,若长时间不处理则容易造成积压,则可以将支付事件类型的心跳事件的过期时间设置得短些,同时结合数据库存储性能相应的事件类型的心跳时间设置对应的过期时间,若数据库的存储能力较弱,长时间的大量心跳事件容易造成内存不足,则可以将一个或多个事件类型的心跳事件的过期时间设置得短些。
在本实施例中,根据事件类型分别对心跳事件序列的心跳事件进行聚合,并依据各类事件类型对应的过期时间生成所述事件类型对应的特征事件信息,其中,特征事件信息可以表示为:“关键字:过期时间”,表示该事件类型的心跳事件存在,并在过期时间达到时将该条特征事件信息进行删除。将特征事件信息输出到数据库,该数据库可以为Redis数据库。当特征事件信息输出到数据库时,同时生效该特征事件信息对应的过期时间。
特征事件信息输出如下:
keyword:过期时间M
其中,keyword表示该特征事件信息的特征值,过期时间M表示时间M后过期。
S230、在所述过期时间到达时,检测所述数据库是否存在待检测事件类型对应的未过期的特征事件信息,若不存在,则触发所述待检测事件类型对应的下游动作。
对于待检测事件类型的特征时间信息的检测可以是多进程并行进行的。
在各类事件类型的过期时间到达时,检测数据库是否存在待检测事件类型对应的特征事件信息。
若检测数据库不存在待检测事件类型对应的特征事件信息,则说明在过期时间对应的时间窗口内并不存在该事件类型对应的心跳事件的产生,则触发特征事件信息对应的下游动作。例如,将上述支付心跳事件对应的特征事件信息在12:02进行删除后,由于支付类型的过期时间为120秒,且在12:00-12:02之间没有新的支付心跳事件对应的特征事件信息的产生,说明在这过期时间对应的时间窗口,即120秒之内不存在该支付类型对应的支付心跳事件的产生。
图3是本申请实施例提供的一种心跳事件检测方法的另一流程图,如图3所示,在本申请一实施例中,在步骤S220中的将所述特征事件信息写入数据库之后,还包括以下步骤:
S220A、根据过期时间将已过期的特征事件信息从数据库中删除。
在本实施例中,若该事件类型的过期时间达到,则从该数据库删除达到过期时间对应的特征事件信息。如特征事件信息为:pay_success:120s;该特征事件产生时间为12:00,则该支付心跳事件对应的特征事件信息在12:02达到时从数据库中进行删除。
继续参考图3,在本申请一实施例中,若在已写入到数据库的特征事件信息的过期时间达到之前,还可以执行以下步骤:
S220B、获取在所述过期时间到达前写入新的特征事件信息,根据新写入的特征事件信息更新已写入到数据库的同一事件类型对应的特征事件信息的过期时间。
具体的,步骤S220B可以包括以下步骤:
B201、在所述过期时间到达前产生新的特征事件信息、且该特征事件信息的事件类型与数据库中已写入的特征事件信息的事件类型相同,则将所述新的特征事件信息合并到数据库中所述已写入的特征事件信息。
例如,支付类型的过期时间为2分钟,即120秒,数据库中当前已写入的特征事件信息在12:02过期,若在12:02达到之前,12:01产生新的特征事件信息、且该特征事件信息的事件类型为支付类型,将新的特征事件信息合并到数据库中已写入的特征事件信息。
B202、将所述已写入的所述特征事件信息的过期时间更新为所述新的特征事件信息的过期时间。
写入到数据库中的特征事件信息的生存时间会逐渐减少,并在达到过期时间时,生存时间为零,清除该特征事件信息,若数据库内不存在其他同一事件类型的特征事件信息,则说明该数据库内不存在该事件类型,在过期时间对应的时间窗口内没有发生新的同一类型事件的产生;若出现新的特征事件信息,则更新该事件类型的过期时间,将已写入的所述特征事件信息的过期时间更新为新的特征事件信息的过期时间。
如在12:00产生特征事件信息pay_success1:120s,过期时间为120秒,支付类型的过期时间为12:02,写入Redis数据库,并生效该过期时间;
12:01产生新的特征事件信息pay_success2:120s,此时,已写入数据库的特征事件信息pay_success1的剩余生存时间为60秒,支付类型的过期时间为12:02;
将新的特征事件信息pay_success2写入到Redis数据库进行合并,此时,特征事件信息pay_success1的剩余生存时间为60秒;支付类型的过期时间刷新为12:03。
当12:02时,特征事件信息pay_success1的过期时间达到,从Redis数据库中删除或清除特征事件信息pay_success1。
在达到12:03时,特征事件信息pay_success2的过期时间达到,从Redis数据库中清楚特征事件信息pay_success2。若截止此刻,仍未有新的特征事件信息pay_success3写入,说明在12:01~12:03分钟内没有发生新的支付心跳事件,Redis数据库中没有支付类型对应的特征事件信息,则触发下游动作,如报警。
下面结合图4,对本申请方案进行说明,图4是本申请实施例提供的以时间点D为参考点的特征事件信息的变化示意图。如图4所示,条形O、P和Q分别表示已过期的特征事件信息O、当前的特征事件信息P以及新产生的特征事件信息Q,这些特征事件信息的事件类型相同,如都是支付类型,过期时间相同(即条形的长度),如都是120秒。
在时间点A进行检测时,此时检测到数据库中存在待检测事件类型对应的未过期的特征事件信息,即特征事件信息O,不触发下游动作;
在时间点B进行检测时,由于在时间点A~B之间的时间内产生了新的特征事件信息,即特征事件信息P,此时检测到数据库中存在待检测事件类型对应的未过期的特征事件信息,即特征事件信息O和P,不触发下游动作;
在时间点C进行检测时,由于在时间点B~C之间的时间内产生了新的特征事件信息,即特征事件信息Q,此时检测到数据库中检测到特征事件信息O达到过期时间,可以将特征事件信息O从数据库中删除,数据库中还存在待检测事件类型对应的未过期的特征事件信息,即特征事件信息P和Q,不触发下游动作;
在时间点D进行检测时,此时检测到数据库中的特征事件信息P达到过期时间,可以将特征事件信息P从数据库中删除,数据库中还存在待检测事件类型对应的未过期的特征事件信息,即特征事件信息Q,不触发下游动作;
在时间点E进行检测时,此时检测到数据库中的特征事件信息Q达到过期时间,可以将特征事件信息Q从数据库中删除,数据库中不存在待检测事件类型对应的未过期的特征事件信息,触发下游动作;说明在过期时间对应的时间窗口内(即120秒)没有产生支付类型的新的特征事件信息,也即是没有产生该事件类型新的心跳事件,从而实现心跳事件在预设时间窗口内未发生(或不存在)的检测。
需要说明的是,在本实施例中,过期时间对应的时间时长和时间窗口对应的时间时长相同。
本实施例提供的心跳事件检测方法,通过按照预设时间间隔获取心跳事件系统产生的心跳事件序列;根据事件类型分别对心跳事件序列在各个时间间隔内的心跳事件进行聚合,并依据各类事件类型对应的过期时间生成所述事件类型对应的特征事件信息,将特征事件信息写入数据库;在过期时间到达时,检测数据库是否存在待检测事件类型对应的特征事件信息,若不存在,则触发所述待检测事件类型对应的下游动作,本技术方案将心跳事件序列中同一事件类型的心跳事件进行聚合处理后进行存储,减少心跳事件检测的数据存储量和计算量,尤其是心跳事件不存在的心跳检测,利用聚合后生成的特征事件信息在过期时间对应的时间窗口进行检测,在过期时间达到后清除该特征事件信息,从而能够检测出心跳事件不存在的状况,不需要存储大量的心跳事件再进行统计分析,提高处理速度,能够适应高并发大流量的场景
相对于在相关技术中,针对于某一事件类型的心跳事件的检测,需要存储该类型的发生的每一个心跳事件,根据每个发生的心跳事件来检测系统是否正常运行。尤其是针对具有时间窗口的心跳事件的检测,则需要存储该时间窗口内的事件类型的所有发生的心跳事件,这需要占据很大的存储空间,并且影响服务器的响应速率和处理效率,在本方案中,通过检测预设时间窗口内心跳事件不存在来监控系统状况,在这种情况下,将发生的心跳事件进行聚合得到该事件类型对应的特征事件信息,用于表征该时间窗口内出现过该事件类型的心跳事件,至于其出现的数量并不关心,因此无需存储该事件类型在该时间窗口内发生的所有心跳事件,从而大大减少了数据的存储量,例如,心跳事件系统每10秒产生2万个心跳事件,这些心跳事件可以分为10类,则进行聚合后,输出到数据库中的是10个特征事件信息,分别对应10种事件类型的心跳事件。进一步的,对心跳事件进行统计,在相关统计技术中,需要对产生的大量心跳事件进行统计,计算量非常大,在本申请方案中,只需要对聚合得到的特征事件信息进行统计处理即可得到时间窗口内是否出现过心跳事件,如果不存在,则触发报警,减少了数据计算量,提高心跳事件监控的实时性,同时能够为不同事件类型设置不同的过期时间,实现多时间窗口的多个事件类型的心跳事件不存在的检测,简单且节省计算成本和存储空间。
为了更清楚的阐述本申请的技术方案,下面针对心跳事件检测方法的多个步骤进行进一步说明。
在一实施例中,步骤S220中的根据事件类型分别对所述心跳事件序列在各个时间间隔内的心跳事件进行聚合,并依据各类事件类型对应的过期时间生成所述事件类型对应的特征事件信息,可以包括以下步骤:
S2201、对所述心跳事件序列中至少一个心跳事件进行特征识别,以确定所述心跳事件对应的事件类型。
每种事件类型的心跳事件对应于唯一的特征信息。
通过特征识别得到至少一个心跳事件的特征信息,进而根据特征信息可以确定该心跳事件对应的事件类型,特征信息可以包括关键字、符号、图形等至少一个或者几个的组合。
在一种可能的实现方式中,该步骤S2201可以包括以下步骤:
S2011、提取所述心跳事件序列中至少一个心跳事件的特征关键字。
在本实施例中,心跳事件对应的事件记录由多个字符组成,提取心跳事件序列中的至少一个心跳事件的特征关键字,如“keyword1”、“keyword2”和“keyword3”等。
S2012、根据事件类型与特征关键字之间的对应关系,确定所述该心跳事件对应的事件类型。
在本实施例中,预先设置不同事件类型及其特征关键字的对应关系,如支付类型的特征关键字为“pay_success”,请求连接类型的特征关键字为“connect_success”等。其中,这些特征关键字可以是一个,也可以是多个的组合。
根据提取出来的心跳事件的特征关键字,通过事件类型与特征关键字之间的对应关系查询该特征关键字对应的事件类型,确定携带该特征关键字的心跳事件对应的事件类型。
S2202、将所述心跳事件序列中在各个时间间隔内的、同一事件类型的心跳事件进行聚合,得到与所述事件类型对应的聚合事件信息。
例如,在11:50~12:00这10分钟的时间间隔里,该心跳事件序列存在不同事件类型的20000个的心跳事件,例如事件类型A的心跳事件为2000个,事件类型B的心跳事件为3000个,事件类型C的心跳事件为6000个,事件类型D的心跳事件为9000个,则将同一事件类型的心跳事件进行聚合,得到事件类型A对应的一条聚合事件信息A’,事件类型B对应的一条聚合事件信息B’,事件类型C对应的一条聚合事件信息C’,事件类型D对应的一条聚合事件信息D’。
本实施例将数据量巨大的心跳事件转换为数据量小的聚合事件信息,不需要存储数据量巨大的心跳事件,而存储数据量极小的聚合事件信息,大大节省了存储空间。
S2203、根据所述聚合事件信息及其所属事件类型对应的过期时间生成对应的特征事件信息。
在本实施例中,将聚合事件信息作为键(key),将过期时间作为值(value),按照Redis数据库的存储结构进行存储,生成对应的特征事件信息。
在一种可能的实现方式中,该步骤S2203可以包括以下步骤:
S2031、将所述聚合事件信息写入数据库。
在本实施例中,将聚合事件信息写入到Redis数据库,如聚合事件信息为keyword1:3写入到Redis数据库,用于表示携带有该特征关键字keyword1的事件类型、且该事件类型进行聚合处理的心跳事件的数量为3。
S2032、从所述数据库获取预先设置的与所述聚合特征信息所属事件类型对应的过期时间。
在本实施例中,通过管理后台预先设置每个事件类型对应的过期时间,并设置每个事件类型及其过期时间的对应关系,将该事件类型及其过期时间的对应关系存储到数据库中。
当将聚合事件信息输出到数据库中,根据聚合事件信息对应的事件类型查找出该事件类型对应的过期时间,如聚合事件信息为pay_success:2000,则查询到该支付类型的过期时间为120秒。
S2033、将聚合事件信息的特征关键字及其对应的过期时间按照预设数据结构进行存储,得到生成对应的特征事件信息。
将聚合事件信息作为键(key),将过期时间作为值(value),按照Redis数据库的存储结构进行存储,生成对应的特征事件信息。当达到过期时间时,则删除该键,即聚合事件信息。
本实施例利用数据量极小的特征事件信息对事件类型进行检测,无需对数据量巨大的心跳事件进行统计和分析,大大节省了心跳事件不存在的检测计算量,提高了处理效率,实现心跳事件不存在的实时监测。
为了更清楚地阐述本申请,下面结合图5对本技术方案进行示例性说明,图5是本申请实施例提供的一种心跳事件检测的又一方法流程图。
如图5所示,心跳事件检测可以通过不同的进程并行处理。
其中,进程A进行如下步骤:获取心跳事件系统产生的心跳事件,其中,心跳事件系统可以为基于Flink技术的系统,这些心跳事件是按照事件发生时间进行获取的心跳事件,例如按照事件发生时间顺序产生了5个心跳事件得到心跳事件序列,分别为:
H:keyword1:pay_success
H:keyword1:pay_success
H:keyword1:pay_success
H:keyword2:connect_success
H:keyword3:exit
由于心跳事件中具有多种事件类型,用户根据实际需要选定其中一种或多种的事件类型进行检测,对心跳事件序列进行特征识别,从心跳事件序列中筛选出携带有待检测事件类型的心跳事件进行输出,对输出的心跳事件根据事件类型进行聚合处理,将同一事件类型的心跳事件进行聚合,将聚合后的心跳事件信息(如该心跳事件类型对应的关键字)及其对应的过期时间输出到Redis数据库,生成特征事件信息,并生效特效事件信息的过期时间,即开始按照过期时间进行生存剩余时间的倒计时;其中,心跳事件类型对应的关键字可以从管理后台中预先设置的事件类型的关键字中读取。
进程B进行如下步骤:用户在管理后台预先设置待检测的心跳事件类型的过期时间以及特征值(该特征值可以为关键字keyword),管理后台获取到待检测的心跳事件类型的过期时间以及特征值进行保存。读取管理后台中的待检测的心跳事件类型的过期时间以及特征值,用该特征值查询Redis数据库中是否存在该特征值(即关键字keyword)对应的特征事件信息,若存在,则说明在过期时间对应的时间窗口内出现过该事件类型的心跳事件,若不存在,则说明在过期时间对应的时间窗口内没有出现过该事件类型的心跳事件,则触发下游动作,如报警,触发风控系统,或者进行其他相关动作,还可以使用kafka进行通道分发处理。
以上示例仅用于辅助阐述本公开技术方案,其涉及的图示内容及具体流程不构成对本公开技术方案的使用场景的限定。
下面对心跳事件检测装置的相关实施例进行详细阐述。
图6是本申请实施例提供的一种心跳事件检测装置的结构示意图,该心跳事件检测装置可以执行于服务器端。
具体的,如图6所示,该心跳事件检测装置200包括:序列获取模块210、信息写入模块220和动作触发模块230。
其中,序列获取模块210,用于按照预设时间间隔获取心跳事件系统产生的心跳事件序列;
信息写入模块220,用于根据事件类型分别对所述心跳事件序列在各个时间间隔内的心跳事件进行聚合,并依据各类事件类型对应的过期时间生成所述事件类型对应的特征事件信息,将所述特征事件信息写入数据库;
动作触发模块230,用于在所述过期时间到达时,检测所述数据库是否存在待检测事件类型对应的未过期的特征事件信息,若不存在,则触发所述待检测事件类型对应的下游动作。
本实施例提供的心跳事件检测装置,通过序列获取模块210按照预设时间间隔获取心跳事件系统产生的心跳事件序列;信息写入模块220根据事件类型分别对心跳事件序列在各个时间间隔内的心跳事件进行聚合,并依据各类事件类型对应的过期时间生成所述事件类型对应的特征事件信息,将特征事件信息写入数据库;动作触发模块230在过期时间到达时,检测数据库是否存在待检测事件类型对应的未过期的特征事件信息,若不存在,则触发所述待检测事件类型对应的下游动作,实现了将对应事件类型的心跳事件进行聚合处理为特征事件信息进行存储,从而减少了心跳事件的数据存储量,尤其是心跳事件不存在的心跳检测,利用过期时间达到后,将特征事件信息进行删除,检测到预设时间窗口内是否出现过对应的心跳事件类型,不需要存储大量的心跳事件再进行统计分析,提高处理速度,能够适应高并发大流量的场景。
在一种可能的实现方式中,心跳事件检测装置200还包括:时间更新模块;
其中,时间更新模块,用于获取在所述过期时间到达前写入新的特征事件信息,根据新写入的特征事件信息更新已写入到数据库的同一事件类型对应的特征事件信息的过期时间。
在一种可能的实现方式中,心跳事件检测装置200还包括:信息删除模块;
其中,信息删除模块,用于根据所述过期时间将已过期的特征事件信息从所述数据库中删除。
在一种可能的实现方式中,心跳事件检测装置200还包括:时间设置模块;
其中,时间设置模块,用于获取心跳事件的事件类型特性,根据所述事件类型特性及数据库存储性能为相应的事件类型的心跳事件设置对应的过期时间。
在一种可能的实现方式中,信息写入模块220包括:类型确定单元、事件聚合单元和信息生成单元;
其中,类型确定单元,用于对所述心跳事件序列中至少一个心跳事件进行特征识别,以确定所述心跳事件对应的事件类型;事件聚合单元,用于将所述心跳事件序列中在各个时间间隔内的、同一事件类型的心跳事件进行聚合,得到与所述事件类型对应的聚合事件信息;信息生成单元,用于根据所述聚合事件信息及其所属事件类型对应的过期时间生成对应的特征事件信息。
在一种可能的实现方式中,类型确定单元包括:特征提取子单元和类型确定子单元;
其中,特征提取子单元,用于提取所述心跳事件序列中至少一个心跳事件的特征关键字;类型确定子单元,用于根据事件类型与特征关键字之间的对应关系,确定所述心跳事件对应的事件类型。
在一种可能的实现方式中,信息生成单元包括:信息写入子单元、时间获取子单元和信息得到子单元;
其中,信息写入子单元,用于将所述聚合事件信息写入数据库;
时间获取子单元,用于从所述数据库获取预先设置的与所述聚合特征信息所属事件类型对应的过期时间;
信息得到子单元,用于将所述聚合事件信息的特征关键字及其对应的过期时间按照预设数据结构进行存储,得到对应的特征事件信息。
在一种可能的实现方式中,时间更新模块包括:信息合并单元和时间更新单元;
其中,信息合并单元,用于在所述过期时间到达前产生新的特征事件信息、且该特征事件信息的事件类型与数据库中已写入的特征事件信息的事件类型相同,则将所述新的特征事件信息合并到数据库中所述已写入的特征事件信息;时间更新单元,用于将所述已写入的所述特征事件信息的过期时间更新为所述新的特征事件信息的过期时间。
本实施例的心跳事件检测装置可执行本申请前述实施例所示的心跳事件检测方法,其实现原理相类似,此处不再赘述。
本申请实施例中提供了一种电子设备,该电子设备包括:存储器和处理器;至少一个程序,存储于存储器中,用于被处理器执行时,与现有技术相比可实现:减少心跳事件检测的数据存储量和计算量,提高心跳事件不存在的检测效率和处理时间。
在一个可选实施例中提供了一种电子设备,如图7所示,图7所示的电子设备4000包括:处理器4001和存储器4003。其中,处理器4001和存储器4003相连,如通过总线4002相连。可选地,电子设备4000还可以包括收发器4004,收发器4004可以用于该电子设备与其他电子设备之间的数据交互,如数据的发送和/或数据的接收等。需要说明的是,实际应用中收发器4004不限于一个,该电子设备4000的结构并不构成对本申请实施例的限定。
处理器4001可以是CPU(Central Processing Unit,中央处理器),通用处理器,DSP(Digital Signal Processor,数据信号处理器),ASIC(Application SpecificIntegrated Circuit,专用集成电路),FPGA(Field Programmable Gate Array,现场可编程门阵列)或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本申请公开内容所描述的各种示例性的逻辑方框,模块和电路。处理器4001也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,DSP和微处理器的组合等。
总线4002可包括一通路,在上述组件之间传送信息。总线4002可以是PCI(Peripheral Component Interconnect,外设部件互连标准)总线或EISA(ExtendedIndustry Standard Architecture,扩展工业标准结构)总线等。总线4002可以分为地址总线、数据总线、控制总线等。为便于表示,图7中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
存储器4003可以是ROM(Read Only Memory,只读存储器)或可存储静态信息和指令的其他类型的静态存储设备,RAM(Random Access Memory,随机存取存储器)或者可存储信息和指令的其他类型的动态存储设备,也可以是EEPROM(Electrically ErasableProgrammable Read Only Memory,电可擦可编程只读存储器)、CD-ROM(Compact DiscRead Only Memory,只读光盘)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。
存储器4003用于存储执行本申请方案的应用程序代码,并由处理器4001来控制执行。处理器4001用于执行存储器4003中存储的应用程序代码,以实现前述方法实施例所示的内容。
其中,电子设备包括但不限于:移动电话、笔记本电脑、数字广播接收器、PDA(个人数字助理)、PAD(平板电脑)、PMP(便携式多媒体播放器)、车载终端(例如车载导航终端)等等的移动终端以及诸如数字TV、台式计算机等等的固定终端。图7示出的电子设备仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
本申请实施例提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,当其在计算机上运行时,使得计算机可以执行前述方法实施例中相应内容。与现有技术相比,本申请实施例实现了将心跳事件序列中同一事件类型的心跳事件进行聚合处理后进行存储,减少心跳事件检测的数据存储量和计算量,尤其是心跳事件不存在的心跳检测,利用聚合后生成的特征事件信息在过期时间对应的时间窗口进行检测,在过期时间达到后清除该特征事件信息,从而能够检测出心跳事件不存在的状况,不需要存储大量的心跳事件再进行统计分析,提高处理速度,能够适应高并发大流量的场景。
本申请实施例提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备,如电子设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行时实现如下情况:
按照预设时间间隔获取心跳事件系统产生的心跳事件序列;
根据事件类型分别对所述心跳事件序列在各个时间间隔内的心跳事件进行聚合,并依据各类事件类型对应的过期时间生成所述事件类型对应的特征事件信息,将所述特征事件信息写入数据库;
在所述过期时间到达时,检测所述数据库是否存在待检测事件类型对应的未过期的特征事件信息,若不存在,则触发所述待检测事件类型对应的下游动作。
需要说明的是,本公开上述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本公开中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、RF(射频)等等,或者上述的任意合适的组合。
上述计算机可读介质可以是上述电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。
上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该电子设备执行时,使得该电子设备执行上述实施例所示的方法。
可以以一种或多种程序设计语言或其组合来编写用于执行本公开的操作的计算机程序代码,上述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本公开实施例中所涉及到的模块可以通过软件的方式实现,也可以通过硬件的方式来实现。其中,模块的名称在某种情况下并不构成对该模块本身的限定,例如,序列获取模块还可以被描述为“获取序列的模块”。
应该理解的是,虽然附图的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,其可以以其他的顺序执行。而且,附图的流程图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,其执行顺序也不必然是依次进行,而是可以与其他步骤或者其他步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
以上所述仅是本申请的部分实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本申请的保护范围。
Claims (10)
1.一种心跳事件检测方法,其特征在于,包括以下步骤:
按照预设时间间隔获取心跳事件系统产生的心跳事件序列;
根据事件类型分别对所述心跳事件序列在各个时间间隔内的心跳事件进行聚合,并依据各类事件类型对应的过期时间生成所述事件类型对应的特征事件信息,将所述特征事件信息写入数据库;
在所述过期时间到达时,检测所述数据库是否存在待检测事件类型对应的未过期的特征事件信息,若不存在,则触发所述待检测事件类型对应的下游动作;以及,根据所述过期时间将已过期的特征事件信息从所述数据库中删除。
2.根据权利要求1所述的心跳事件检测方法,其特征在于,在所述过期时间到达之前,还包括:
获取在所述过期时间到达前写入新的特征事件信息,根据新写入的特征事件信息更新已写入到数据库的同一事件类型对应的特征事件信息的过期时间。
3.根据权利要求1所述的心跳事件检测方法,其特征在于,所述依据各类事件类型对应的过期时间生成所述事件类型对应的特征事件信息的步骤之前,还包括:
获取心跳事件的事件类型特性,根据所述事件类型特性及数据库存储性能为相应的事件类型的心跳事件设置对应的过期时间。
4.根据权利要求1所述的心跳事件检测方法,其特征在于,所述根据事件类型分别对所述心跳事件序列在各个时间间隔内的心跳事件进行聚合,并依据各类事件类型对应的过期时间生成所述事件类型对应的特征事件信息的步骤包括:
对所述心跳事件序列中至少一个心跳事件进行特征识别,以确定所述心跳事件对应的事件类型;
将所述心跳事件序列中在各个时间间隔内的、同一事件类型的心跳事件进行聚合,得到与所述事件类型对应的聚合事件信息;
根据所述聚合事件信息及其所属事件类型对应的过期时间生成对应的特征事件信息。
5.根据权利要求4所述的心跳事件检测方法,其特征在于,所述对所述心跳事件序列中至少一个心跳事件进行特征识别,以确定所述心跳事件对应的事件类型的步骤包括:
提取所述心跳事件序列中至少一个心跳事件的特征关键字;
根据事件类型与特征关键字之间的对应关系,确定所述心跳事件对应的事件类型。
6.根据权利要求4所述的心跳事件检测方法,其特征在于,所述根据所述聚合事件信息及其所属事件类型对应的过期时间生成对应的特征事件信息的步骤包括:
将所述聚合事件信息写入数据库;
从所述数据库获取预先设置的与所述聚合特征信息所属事件类型对应的过期时间;
将所述聚合事件信息的特征关键字及其对应的过期时间按照预设数据结构进行存储,得到对应的特征事件信息。
7.根据权利要求2所述的心跳事件检测方法,其特征在于,所述获取在所述过期时间到达前写入新的特征事件信息,根据新写入的特征事件信息更新已写入到数据库的同一事件类型对应的特征事件信息的过期时间的步骤包括:
在所述过期时间到达前产生新的特征事件信息、且该特征事件信息的事件类型与数据库中已写入的特征事件信息的事件类型相同,则将所述新的特征事件信息合并到数据库中所述已写入的特征事件信息;
将所述已写入的所述特征事件信息的过期时间更新为所述新的特征事件信息的过期时间。
8.一种心跳事件检测装置,其特征在于,包括:
序列获取模块,用于按照预设时间间隔获取心跳事件系统产生的心跳事件序列;
信息写入模块,用于根据事件类型分别对所述心跳事件序列在各个时间间隔内的心跳事件进行聚合,并依据各类事件类型对应的过期时间生成每类事件类型对应的特征事件信息,将所述特征事件信息写入数据库;
动作触发模块,用于在所述过期时间到达时,检测所述数据库是否存在待检测事件类型对应的未过期的特征事件信息,若不存在,则触发所述待检测事件类型对应的下游动作;以及,根据所述过期时间将已过期的特征事件信息从所述数据库中删除。
9.一种电子设备,其特征在于,所述电子设备包括:
一个或多个处理器;
存储器;
一个或多个应用程序,其中所述一个或多个应用程序被存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个程序配置用于:执行根据权利要求1-7任一项所述的心跳事件检测方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1-7任一项所述的心跳事件检测方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011502152.3A CN112702227B (zh) | 2020-12-17 | 2020-12-17 | 心跳事件检测方法、装置、设备及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011502152.3A CN112702227B (zh) | 2020-12-17 | 2020-12-17 | 心跳事件检测方法、装置、设备及计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112702227A CN112702227A (zh) | 2021-04-23 |
CN112702227B true CN112702227B (zh) | 2022-07-08 |
Family
ID=75507287
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011502152.3A Active CN112702227B (zh) | 2020-12-17 | 2020-12-17 | 心跳事件检测方法、装置、设备及计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112702227B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114095404B (zh) * | 2021-11-17 | 2023-06-09 | 北京金和网络股份有限公司 | 基于流计算的视频设备状态计算输出方法、装置和设备 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103945455A (zh) * | 2014-04-25 | 2014-07-23 | 中国联合网络通信集团有限公司 | 一种实现自适应心跳数据包发送的方法及装置 |
CN105916100A (zh) * | 2016-04-01 | 2016-08-31 | 华为技术有限公司 | 代理心跳包的方法、装置和通信系统 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102404858B (zh) * | 2011-11-25 | 2014-04-02 | 华为技术有限公司 | 一种无线资源优化方法、装置及系统 |
CN105827697A (zh) * | 2016-03-14 | 2016-08-03 | 广州趣丸网络科技有限公司 | 用户离线检测方法和用户离线检测系统 |
CN107222371A (zh) * | 2017-08-04 | 2017-09-29 | 北京奇艺世纪科技有限公司 | 一种客户端心跳监测方法和系统 |
CN109388504B (zh) * | 2018-09-26 | 2024-07-02 | 平安科技(深圳)有限公司 | 消息化对接处理方法、装置、计算机设备及存储介质 |
US10785350B2 (en) * | 2018-10-07 | 2020-09-22 | Hewlett Packard Enterprise Development Lp | Heartbeat in failover cluster |
-
2020
- 2020-12-17 CN CN202011502152.3A patent/CN112702227B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103945455A (zh) * | 2014-04-25 | 2014-07-23 | 中国联合网络通信集团有限公司 | 一种实现自适应心跳数据包发送的方法及装置 |
CN105916100A (zh) * | 2016-04-01 | 2016-08-31 | 华为技术有限公司 | 代理心跳包的方法、装置和通信系统 |
Also Published As
Publication number | Publication date |
---|---|
CN112702227A (zh) | 2021-04-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109685144B (zh) | 一种对视频模型做评估的方法、装置及电子设备 | |
CN108322350B (zh) | 业务监控方法及装置和电子设备 | |
CN108880934B (zh) | 一种基于区块链的数据流量统计方法和装置 | |
CN112860513B (zh) | 应用无响应监测方法、装置、设备及存储介质 | |
CN112579148A (zh) | 基于业务代理的业务消息处理方法、装置及电子设备 | |
CN107247763A (zh) | 业务数据统计方法、装置、系统、存储介质及电子设备 | |
CN109165133A (zh) | 数据监控方法、装置、设备及存储介质 | |
CN112702227B (zh) | 心跳事件检测方法、装置、设备及计算机可读存储介质 | |
CN112583669A (zh) | 线上链路压力测试方法、装置、电子设备及介质 | |
CN111324809A (zh) | 一种热点信息监测方法、装置及系统 | |
CN113391981A (zh) | 一种监控指标的预警方法及相关设备 | |
CN113556480B (zh) | 车辆连续运动视频生成方法、装置、设备和介质 | |
CN108287659B (zh) | 一种基于实时数据流的数据采样方法、装置及电子设备 | |
CN113778777A (zh) | 一种日志回放方法和装置 | |
CN111159009A (zh) | 一种日志服务系统的压力测试方法及装置 | |
CN112953723B (zh) | 一种车载入侵检测方法及装置 | |
CN116319810A (zh) | 分布式系统的流量控制方法、装置、设备、介质及产品 | |
CN111031397B (zh) | 收集剪辑片段评论的方法、装置、设备及存储介质 | |
CN113760989A (zh) | 一种无界流数据处理方法、装置、设备及存储介质 | |
CN109388542B (zh) | 一种监控方法及装置、计算机可读存储介质 | |
CN112529613B (zh) | 用户连续登录数据的处理、虚拟资源的转移方法和装置 | |
CN113225228B (zh) | 数据处理方法及装置 | |
CN111199003A (zh) | 多网页窗口的管理方法、管理装置及终端设备 | |
CN111444172A (zh) | 数据监控方法、装置、介质及设备 | |
CN118041804B (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 |