CN111722973A - 一种事件超时监控方法、系统及存储介质 - Google Patents
一种事件超时监控方法、系统及存储介质 Download PDFInfo
- Publication number
- CN111722973A CN111722973A CN201910214009.5A CN201910214009A CN111722973A CN 111722973 A CN111722973 A CN 111722973A CN 201910214009 A CN201910214009 A CN 201910214009A CN 111722973 A CN111722973 A CN 111722973A
- Authority
- CN
- China
- Prior art keywords
- monitoring
- time
- time wheel
- identification
- overtime
- 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.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3003—Monitoring arrangements specially adapted to the computing system or computing system component being monitored
- G06F11/302—Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a software system
Landscapes
- Engineering & Computer Science (AREA)
- Computing Systems (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Mathematical Physics (AREA)
- Quality & Reliability (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Telephonic Communication Services (AREA)
Abstract
本申请实施例公开了一种事件超时监控方法、系统及存储介质,本申请中事件超时监控系统获取监控标识及其对应的第一超时时间;根据第一超时时间从时间轮中确定目标刻度;根据目标刻度以及时间轮的时间轮标识确定监控标识的前缀;保存前缀、监控标识及其对应关系保存至分布式数据库中;当时间轮走到目标刻度时,根据目标刻度以及时间轮标识从分布式数据库中提取监控标识;基于分布式计算模块根据监控标识所对应的最新超时时间确定监控标识是否超时。本申请实施例时间轮与分布式存储数据库相结合,根据目标刻度和时间轮标识从分布式数据库中快速提取监控标识,然后利用分布式计算模块确定该监控标识是否超时,可以实现海量数据的超时监控。
Description
技术领域
本申请涉及数据处理技术领域,具体涉及一种事件超时监控方法、装置及存储介质。
背景技术
在很多数据处理领域,为了更好地了解并推进事件的进程,希望对正在进行的事务进行有效的监控,例如,在物流行业中,快件的配送速度对于客户来说非常重要,但快件的配送会涉及到很多外界因素的影响,难免中途会出现一些延迟,因此有必要实时监控快件的各个环节以及巴枪操作。
但由于快件量上千万,快件的巴枪事件上有几十亿,每次需要处理的数据非常大,普通的监控程序难以实现海量数据的超时监控。
发明内容
本申请实施例提供一种事件超时监控方法、系统及存储介质,可以实现海量数据的超时监控。
一方面,本申请提供一种事件超时监控方法,所述方法包括:
获取监控标识及其对应的第一超时时间;
根据所述第一超时时间从时间轮中确定目标刻度;
根据所述目标刻度以及所述时间轮的时间轮标识确定所述监控标识的前缀;
保存所述前缀、所述监控标识及其对应关系保存至分布式数据库中;
当所述时间轮走到所述目标刻度时,根据所述目标刻度以及所述时间轮标识从所述分布式数据库中提取所述监控标识;
基于分布式计算模块根据所述监控标识所对应的最新超时时间确定所述监控标识是否超时,所述最新超时时间为最接近当前时刻接收到的超时时间。
可选的,在一些实施例中,所述基于分布式计算模块根据所述监控标识所对应的最新超时时间确定所述监控标识是否超时,包括:
基于所述分布式计算模块根据所述监控标识从所述分布式数据库中获取最新超时时间;
基于所述分布式计算模块根据所述最新超时时间与当前时间确定所述监控标识是否超时。
可选的,在一些实施例中,所述根据所述目标刻度以及所述时间轮的时间轮标识确定所述监控标识的前缀,包括:
对所述目标刻度以及所述时间轮标识进行一致性哈希处理;
将进行过所述一致性哈希处理的目标刻度以及时间轮标识确定为所述前缀。
可选的,在一些实施例中,所述当所述时间轮走到所述目标刻度时,根据所述目标刻度以及所述时间轮标识从所述分布式数据库中提取所述监控标识,包括:
当所述时间轮走到所述目标刻度时,将所述目标刻度以及所述时间轮标识分发至队列中;
通过所述队列将所述目标刻度以及所述时间轮标识发送至分布式计算模块中;
基于所述分布式计算模块根据所述目标刻度以及所述时间轮标识从所述分布式数据库中提取所述监控标识。
可选的,在一些实施例中,所述基于所述分布式计算模块根据所述目标刻度以及所述时间轮标识从所述分布式数据库中提取所述监控标识,包括:
基于所述分布式计算模块根据所述目标刻度以及所述时间轮标识从所述分布式数据库中确定目标分区;
从所述目标分区中提取所述监控标识。
可选的,在一些实施例中,所述保存所述前缀、所述监控标识及其对应关系保存至分布式数据库中,包括:
采用分区技术在所述分布式数据库中按照预置规则保存所述前缀、所述监控标识及其对应关系。
可选的,在一些实施例中,所述方法还包括:
获取所述监控标识及其对应的第二超时时间,所述第二超时时间为所述第一超时时间之后获取到的超时时间;
将所述监控标识及其对应的第二超时时间保存至所述分布式数据库中。
可选的,在一些实施例中,所述方法还包括:
根据时间轮注册中心构建或恢复所述时间轮。
相应地,本申请还提供一种事件超时监控系统,具体包括:
第一获取单元,用于获取监控标识及其对应的第一超时时间;
第一确定单元,用于根据所述第一超时时间从时间轮中确定目标刻度;
第二确定单元,用于根据所述目标刻度以及所述时间轮的时间轮标识确定所述监控标识的前缀;
第一保存单元,用于保存所述前缀、所述监控标识及其对应关系保存至分布式数据库中;
提取单元,用于当所述时间轮走到所述目标刻度时,根据所述目标刻度以及所述时间轮标识从所述分布式数据库中提取所述监控标识;
第三确定单元,用于基于分布式计算模块根据所述监控标识所对应的最新超时时间确定所述监控标识是否超时,所述最新超时时间为最接近当前时刻接收到的超时时间。
可选的,在一些实施例中,所述第三确定单元具体用于:
基于所述分布式计算模块根据所述监控标识从所述分布式数据库中获取最新超时时间;
基于所述分布式计算模块根据所述最新超时时间与当前时间确定所述监控标识是否超时。
可选的,在一些实施例中,所述第二确定单元具体用于:
对所述目标刻度以及所述时间轮标识进行一致性哈希处理;
将进行过所述一致性哈希处理的目标刻度以及时间轮标识确定为所述前缀。
可选的,在一些实施例中,所述提取单元具体用于:
当所述时间轮走到所述目标刻度时,将所述目标刻度以及所述时间轮标识分发至队列中;
通过所述队列将所述目标刻度以及所述时间轮标识发送至分布式计算模块中;
基于所述分布式计算模块根据所述目标刻度以及所述时间轮标识从所述分布式数据库中提取所述监控标识。
可选的,在一些实施例中,所述提取单元还具体用于:
基于所述分布式计算模块根据所述目标刻度以及所述时间轮标识从所述分布式数据库中确定目标分区;
从所述目标分区中提取所述监控标识。
可选的,在一些实施例中,所述第一保存单元具体用于:
采用分区技术在所述分布式数据库中按照预置规则保存所述前缀、所述监控标识及其对应关系。
可选的,在一些实施例中,所述系统还包括:
第二获取单元,用于获取所述监控标识及其对应的第二超时时间,所述第二超时时间为所述第一超时时间之后获取到的超时时间;
第二保存单元;用于将所述监控标识及其对应的第二超时时间保存至所述分布式数据库中。
可选的,在一些实施例中,所述系统还包括:
处理单元,用于根据时间轮注册中心构建或恢复所述时间轮。
本申请的又一方面提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述各方面所述的方法。
此外,本申请实施例还提供一种存储介质,所述存储介质存储有多条指令,所述指令适于处理器进行加载,以执行本申请实施例提供的任一种事件超时监控方法中的步骤。
本申请实施例中,事件超时监控系统获取监控标识及其对应的第一超时时间;然后根据第一超时时间从时间轮中确定目标刻度;根据目标刻度以及时间轮的时间轮标识确定监控标识的前缀;保存前缀、监控标识及其对应关系保存至分布式数据库中;当时间轮走到目标刻度时,会根据目标刻度以及时间轮标识从分布式数据库中提取监控标识;最后基于分布式计算模块根据监控标识所对应的最新超时时间确定监控标识是否超时。本申请实施例时间轮与分布式存储数据库相结合,可以根据目标刻度和时间轮标识构成的前缀将监控标识保存至分布式数据库中,并且当时间轮走到目标刻度时,可以根据目标刻度和时间轮标识从分布式数据库中快速提取监控标识,然后利用分布式计算模块确定该监控标识是否超时,可以实现海量数据的超时监控。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的事件超时监控系统的一种框架图;
图2是本申请实施例提供的事件超时监控方法的一种流程示意图;
图3是本申请实施例提供的事件超时监控方法的另一种流程示意图;
图4是本申请实施例提供的事件超时监控系统的一种结构示意图;
图5是本申请实施例提供的事件超时监控系统的另一种结构示意图;
图6是本申请实施例提供的服务器的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
在以下的说明中,本申请的具体实施例将参考由一部或多部计算机所执行的步骤及符号来说明,除非另有述明。因此,这些步骤及操作将有数次提到由计算机执行,本文所指的计算机执行包括了由代表了以一结构化型式中的数据的电子信号的计算机处理单元的操作。此操作转换该数据或将其维持在该计算机的内存系统中的位置处,其可重新配置或另外以本领域测试人员所熟知的方式来改变该计算机的运作。该数据所维持的数据结构为该内存的实体位置,其具有由该数据格式所定义的特定特性。但是,本申请原理以上述文字来说明,其并不代表为一种限制,本领域测试人员将可了解到以下的多种步骤及操作亦可实施在硬件当中。
本申请的原理使用许多其它泛用性或特定目的运算、通信环境或组态来进行操作。所熟知的适合用于本申请的运算系统、环境与组态的范例可包括(但不限于)手持电话、个人计算机、服务器、多处理器系统、微电脑为主的系统、主架构型计算机、及分布式运算环境,其中包括了任何的上述系统或装置。
本申请中的术语“第一”、“第二”和“第三”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。
本申请实施例提供了一种事件超时监控方法、系统及存储介质。
本申请中的事件超时监控系统可以集成在服务器中,利用本申请中的时间超时监控系统可以实现海量数据的超时监控。
如图1所示,在一些实施例中,本申请实施例中的事件超时监控系统可以包括监控数据获取模块、时间轮(节点)、时间轮注册中心、分布式数据库、任务队列、分布式计算模块以及报警模块等。
其中,监控数据获取模块用于获取监控数据(包括监控标识及其对应的超时时间);时间轮用于分发与监控标识对应的时间轮标识以及刻度给监控标识当前缀,使得系统可以保存该前缀+监控标识至分布式数据库中,当时间轮每走一个时刻,还需要通过任务队列分发对应的时间轮标识以及时刻给分布式计算模块,使得分布式计算模块根据获取到前缀(即该时间轮标识以及时刻)从分布式数据库中提取对应的监控标识,并根据该监控标识对应的最新超时时间判断该监控标识是否超时;时间轮注册中心用于记录时间轮的节点数据,在监控服务启动时,可以构建或恢复时间轮;报警模块用于当分布式计算模块确定有监控标识超时时,发出报警;分布式数据库还用于缓存最新数据,其中,最新数据包括监控标识及其对应的最近超时时间。
其中,在一些实施例中,本申请实施例中提及事件包括物流快件,本申请实施例提及的监控标识包括运单号,该运单号为物流快件的唯一标识。
请参阅图2,图2为本申请实施例提供的事件超时监控方法的一个流程示意图。该方法的具体流程如下:
101、获取监控标识及其对应的第一超时时间。
本实施例中监控标识可以为运单号,当有巴枪事件发生时(例如快递员扫描快件),巴枪会将对应的监控标识以及该监控标识对应的第一超时时间发送给事件超时监控系统,其中,第一超时时间为该监控标识预计到达下一网点的时间。
102、根据第一超时时间从时间轮中确定目标刻度。
时间轮好比一个时钟,不停的走,每走一个刻度可以设置为30s左右,时钟走一天是24*60*2个刻度,时间轮主要由当前刻度值,每个刻度的间隔时间,以及时间轮的开始时间构成。
需要说明的是,本申请实施例中时间轮刻度时间间隔可以设置为30s,还可以设置为其它时间长度,具体长度此处不做限定。
具体地,将获取到的第一超时时间映射到时间轮相应的刻度上(即目标刻度)。
当刻度间间隔为30s时,第一超时时间=(超时刻度值-当前刻度值)*30s+时间轮的开始时间,其中,超时刻度值为上述的目标刻度,当前刻度值为时间轮当前走到的刻度值。
其中,在一些实施例中,当事件超时监控系统启动工作时,需要根据时间轮注册中心构建或恢复时间轮。
具体地:先查看时间轮注册中心中是否有未分配的时间轮数据(节点数据),假如有未分配的时间轮数据,则直接获取还没分配的时间轮数据,从未分配时间轮中获取时间轮的当前刻度值,每个刻度的间隔时间,以及时间轮的开始时间,恢复时间轮,并将该时间轮设置为已分配状态更新到时间轮注册中心,将该时间轮的信息保存至时间轮注册中心中。
假如没有未分配的时间轮数据,则需要重新构建时间轮,将重构的时间轮的开始时间设为当前时间,刻度时间间隔为30s,当前刻度值为0,并将时间轮的信息保存至时间轮注册中心中。
其中,本实施例中,可以构建和/或恢复多个时间轮,直到可以运行的时间轮个数达到预设值,例如达到30个,其中,每个时间轮都有其对应的时间轮标识,时间轮标识为唯一确定时间轮身份的标识。
本申请实施例可以根据对监控标识进行一致性哈希处理,使得多个超时时间可以平均映射到多个时间轮上。
103、根据目标刻度以及时间轮的时间轮标识确定监控标识的前缀。
其中,为了在后期更快速地提取监控标识,并且为了数据(如监控标识)更加离散化,本实施例需要将目标刻度以及时间轮的时间轮标识确定监控标识的前缀。
在一些实施例中,为了让数据更加均匀地保存至分布式数据库中,根据目标刻度以及时间轮的时间轮标识确定监控标识的前缀包括:对目标刻度以及时间轮标识进行一致性哈希处理;然后将进行过一致性哈希处理的目标刻度以及时间轮标识确定为前缀。
104、保存前缀、监控标识及其对应关系保存至分布式数据库中。
本实施例将前缀、监控标识及其对应关系保存至分布式数据库中与前缀对应的分区中。
具体地,采用分区技术在分布式数据库中按照预置规则保存前缀、监控标识及其对应关系。
具体地,本申请实施例中的分布式数据库包括HBase数据库,该HBase可以结合Flink引擎对数据进行存储,本申请可以采用分区技术在HBase上分区依照特定规则存储不同的数据,例如按照rowkey(前缀)的大小对数据进行排序。
在一些实施例中,本申请实施例中的分布式数据库还包括Redis数据库,分布式数据库用于缓存数据以及尽快还原最新数据,其类型此处不做限定。
105、当时间轮走到目标刻度时,根据目标刻度以及时间轮标识从分布式数据库中提取监控标识。
当时间轮每走一个刻度,都会分发对应的时间轮标识+刻度到队列中,以便分布式计算模块接收需要处理的数据前缀信息(时间轮标识+刻度到队列)。
例如,当时间轮走到目标刻度时,会将目标刻度以及时间轮标识分发至队列中;然后通过队列将目标刻度以及时间轮标识发送至分布式计算模块中,然后基于分布式计算模块根据目标刻度以及时间轮标识从分布式数据库中提取监控标识。
具体地,分布式计算模块可以根据获取到的目标刻度以及时间轮标识对数据(监控标识)进行定位,即通过目标刻度+时间轮标识的形式进行检索,可以判断与目标刻度+时间轮标识对应的数据位于哪个分区,这时分布式计算模块只需要去相应的分区进行数据的获取即可。
其中,本申请实施例支持多进程捞取分布式数据库中的数据,当并发数据较多时,提高数据捞取的速度,其中,本申请实施例中的线程个数大于32,为32的倍数。
其中,本申请实施例中的队列包括kafka或RabbitMq等队列,该队列的主题相同,可以保证分布式计算模块可以按照数据的超时时间的顺序对数据进行超时判断,降低超时判断的时延。
106、基于分布式计算模块根据监控标识所对应的最新超时时间确定监控标识是否超时。
当分布式计算模块获取到当前需要进行超时判断的监控标识之后,将会根据获取到的监控标识从分布式数据库中获取与该监控标识对应的最新超时时间,然后基于分布式计算模块根据最新超时时间与当前时间确定监控标识是否超时,其中,最新超时时间为最接近当前时刻接收到的超时时间。
当最新超时时间为当前对应的第一超时时间时,则此时确定该监控标识超时;当最新超时时间不是当前对应的第一超时时间时,此时将最新超时时间与当前时间作比对,以确定监控标识是否超期,具体地,当最新超时时间位于当前时间之前的,则此时确定第一超时时间超时,当最新超时时间位于当前时间之后,则此时确定第一超时时间不超时。
在一些实施例中,当事件超时监控系统获取到监控标识对应的新数据(第二超时时间)时,此时为了保证同一个监控标识所对应的数据放在同一个时间轮里,需要对监控标识进行一致性哈希,并且保存新数据(第二超时时间)至分布式数据库中。
本申请实施例中,事件超时监控系统获取监控标识及其对应的第一超时时间;然后根据第一超时时间从时间轮中确定目标刻度;根据目标刻度以及时间轮的时间轮标识确定监控标识的前缀;保存前缀、监控标识及其对应关系保存至分布式数据库中;当时间轮走到目标刻度时,会根据目标刻度以及时间轮标识从分布式数据库中提取监控标识;最后基于分布式计算模块根据监控标识所对应的最新超时时间确定监控标识是否超时。本申请实施例可以根据目标刻度和时间轮标识构成的前缀将监控标识保存至分布式数据库中,并且当时间轮走到目标刻度时,可以根据目标刻度和时间轮标识从分布式数据库中快速提取监控标识,然后利用分布式计算模块确定该监控标识是否超时,故本申请可以实现海量数据的超时监控。
请参阅图3,图3为本申请实施例提供的事件超时监控方法的另一流程示意图,方法的具体流程可以如下:
301、获取监控标识及其对应的第一超时时间。
本实施例中监控标识可以为运单号,当有巴枪事件发生时(例如快递员扫描快件),巴枪会将对应的监控标识以及该监控标识对应的第一超时时间发送给事件超时监控系统,其中,第一超时时间为该监控标识预计到达下一网点的时间。
302、根据第一超时时间从时间轮中确定目标刻度。
时间轮好比一个时钟,不停的走,每走一个刻度可以设置为30s左右,时钟走一天是24*60*2个刻度,时间轮主要由当前刻度值,每个刻度的间隔时间,以及时间轮的开始时间构成。
需要说明的是,本申请实施例中时间轮刻度时间间隔可以设置为30s,还可以设置为其它时间长度,具体长度此处不做限定。
具体地,将获取到的第一超时时间映射到时间轮相应的刻度上(即目标刻度)。
当刻度间间隔为30s时,第一超时时间=(超时刻度值-当前刻度值)*30s+时间轮的开始时间,其中,超时刻度值为上述的目标刻度,当前刻度值为时间轮当前走到的刻度值。
其中,在一些实施例中,当事件超时监控系统启动工作时,需要根据时间轮注册中心构建或恢复时间轮。
具体地:先查看时间轮注册中心中是否有未分配的时间轮数据(节点数据),假如有未分配的时间轮数据,则直接获取还没分配的时间轮数据,从未分配时间轮中获取时间轮的当前刻度值,每个刻度的间隔时间,以及时间轮的开始时间,恢复时间轮,并将该时间轮设置为已分配状态更新到时间轮注册中心,将该时间轮的信息保存至时间轮注册中心中。
假如没有未分配的时间轮数据,则需要重新构建时间轮,将重构的时间轮的开始时间设为当前时间,刻度时间间隔为30s,当前刻度值为0,并将时间轮的信息保存至时间轮注册中心中。
303、对目标刻度以及时间轮标识进行一致性哈希处理。
本实施例中,为了使得数据更加离散,并且为了保证数据可以更加均匀地保存至分布式数据库中,还需要对目标刻度以及时间轮标识进行一致性哈希处理。
304、将进行过一致性哈希处理的目标刻度以及时间轮标识确定为前缀。
为了使得在后期进行超期检测时快速地提取到对应的监控标识,本申请需要将进行过一致性哈希处理的目标刻度以及时间轮标识确定为前缀。
305、保存前缀、监控标识及其对应关系保存至分布式数据库中。
本实施例将前缀、监控标识及其对应关系保存至分布式数据库中与前缀对应的分区中。
具体地,采用分区技术在分布式数据库中按照预置规则保存前缀、监控标识及其对应关系。
具体地,本申请实施例中的分布式数据库包括HBase数据库,该HBase可以结合Flink引擎对数据进行存储,本申请可以采用分区技术在HBase上分区依照特定规则存储不同的数据,例如按照rowkey(前缀)的大小对数据进行排序。
在一些实施例中,本申请实施例中的分布式数据库还包括Redis数据库,分布式数据库用于缓存数据以及尽快还原最新数据,其类型此处不做限定。
其中,当突然一次性出现大量数据的时候,可以先让flink休息一段时间再继续工作,例如休息300-500毫秒再继续工作,防止hbase无法承受。
306、当时间轮走到目标刻度时,将目标刻度以及时间轮标识分发至队列中。
当时间轮每走一个刻度,都会分发对应的时间轮标识+刻度到队列中,以便分布式计算模块接收需要处理的数据前缀信息(时间轮标识+刻度到队列)。
例如,当时间轮走到目标刻度时,会将目标刻度以及时间轮标识分发至队列中。
其中,本申请实施例中的队列包括kafka或RabbitMq等队列,该队列的主题相同,可以保证布式计算模块可以按照数据的超时时间的顺序对数据进行超时判断,降低超时判断的时延。
307、通过队列将目标刻度以及时间轮标识发送至分布式计算模块中。
即分布式计算模块可以通过队列获取当前需要超时判断的前缀信息。
308、基于分布式计算模块根据目标刻度以及时间轮标识从分布式数据库中提取监控标识。
具体地,分布式计算模块可以根据获取到的前缀信息(目标刻度+时间轮标识)对数据(监控标识)进行定位,通过目标刻度+时间轮标识的形式进行检索,可以判断与目标刻度+时间轮标识对应的数据位于哪个分区,这时分布式计算模块只需要去相应的分区进行数据的获取即可。
其中,本申请实施例支持多进程捞取分布式数据库中的数据,当并发数据较多时,提高数据捞取的速度,其中,本申请实施例中的线程个数大于32,为32的倍数。
309、基于分布式计算模块根据监控标识所对应的最新超时时间确定监控标识是否超时。
当分布式计算模块获取到当前需要进行超时判断的监控标识之后,将会根据获取到的监控标识从分布式数据库中获取与该监控标识对应的最新超时时间,然后基于分布式计算模块根据最新超时时间与当前时间确定监控标识是否超时,其中,最新超时时间为最接近当前时刻接收到的超时时间,例如,当该监控标识对应的快件到达下一个网点之后,快递员将通过巴枪扫描或输入该快件的监控标识,触发巴枪事件,巴枪会将该监控标识以及预计到达再下一个网点的时间发送给事件超时监控系统,其中,事件超时监控系统将预计到达再下一个网点的时间确定为最新超时时间,当后续系统又接收到了该监控标识对应的预计到达下一网点的时间,此时系统会将该监控标识对应的最新超时时间更新为新接收到的时间。
当最新超时时间为当前对应的第一超时时间时,即说明在接收到第一超时时间到对该监控标识进行超时判断的期间没有接收到该监控标识到达下一网点的消息,即在预计到达下一个网点的时间还没到达下一个网点(若到达了下一个网点则此时的最新超期时间为预计到达再下一个网点的时间),则此时确定该监控标识超时;当最新超时时间不是当前对应的第一超时时间时,此时将最新超时时间与当前时间作比对,以确定监控标识是否超期,具体地,当最新超时时间位于当前时间之前的,则此时确定第一超时时间超时,当最新超时时间位于当前时间之后,则此时确定第一超时时间不超时。
当确定监控标识超时时,此时需要输出告警数据,该告警数据用于指示该监控标识超期,当快递工作人员获取到该告警数据之后,对对应的快件进行加快处理。
在一些实施例中,当事件超时监控系统获取到监控标识对应的新数据(第二超时时间)时,此时为了保证同一个监控标识所对应的数据放在同一个时间轮里,需要对监控标识进行一致性哈希,并且保存新数据(第二超时时间)至分布式数据库中。
需要说明的是,在一些实施例中,本申请中的事件超时监控系统还可以对数据进行周期监控,例如,每间隔6小时对某个监控标识进行超期监控,此时在每一个周期对该监控标识进行超期监控之后,将会重新计算时间轮上下一周期对应的刻度,并生成对应的前缀,并更新数据库中数据的对应前缀。
其中,本申请实施例中的事件超时监控系统扩展性极强,当数据量增大时,只需要增加分布式数据库即可。
此外,本申请实施例中的事件超时监控系统还同时支持周期和实时的数据监控,支持海量数据的监控。
为了更好地实施本申请实施例提供的事件超时监控方法,本申请实施例还提供一种事件超时监控系统,该事件超时监控系统具体可以集成在服务器中。其中名词的含义与上述文本识别方法中相同,具体实现细节可以参考方法实施例中的说明。
请参阅图4,图4为本申请实施例提供的事件超时监控系统的结构示意图,该事件超时监控系统包括:第一获取单元401、第一确定单元402、第二确定单元403、第一保存单元404、提取单元405以及第三确定单元406,如下:
第一获取单元401,用于获取监控标识及其对应的第一超时时间;
第一确定单元402,用于根据所述第一超时时间从时间轮中确定目标刻度;
第二确定单元403,用于根据所述目标刻度以及所述时间轮的时间轮标识确定所述监控标识的前缀;
第一保存单元404,用于保存所述前缀、所述监控标识及其对应关系保存至分布式数据库中;
提取单元405,用于当所述时间轮走到所述目标刻度时,根据所述目标刻度以及所述时间轮标识从所述分布式数据库中提取所述监控标识;
第三确定单元406,用于基于分布式计算模块根据所述监控标识所对应的最新超时时间确定所述监控标识是否超时,所述最新超时时间为最接近当前时刻接收到的超时时间。
在一些实施例中,所述第三确定单元具体406用于:
基于所述分布式计算模块根据所述监控标识从所述分布式数据库中获取最新超时时间;
基于所述分布式计算模块根据所述最新超时时间与当前时间确定所述监控标识是否超时。
在一些实施例中,所述第二确定单元403具体用于:
对所述目标刻度以及所述时间轮标识进行一致性哈希处理;
将进行过所述一致性哈希处理的目标刻度以及时间轮标识确定为所述前缀。
在一些实施例中,所述提取单元405具体用于:
当所述时间轮走到所述目标刻度时,将所述目标刻度以及所述时间轮标识分发至队列中;
通过所述队列将所述目标刻度以及所述时间轮标识发送至分布式计算模块中;
基于所述分布式计算模块根据所述目标刻度以及所述时间轮标识从所述分布式数据库中提取所述监控标识。
在一些实施例中,所述提取单元405还具体用于:
基于所述分布式计算模块根据所述目标刻度以及所述时间轮标识从所述分布式数据库中确定目标分区;
从所述目标分区中提取所述监控标识。
在一些实施例中,所述第一保存单元404具体用于:
采用分区技术在所述分布式数据库中按照预置规则保存所述前缀、所述监控标识及其对应关系。
请参阅图5,在一些实施例中,所述系统还包括:
第二获取单元407,用于获取所述监控标识及其对应的第二超时时间,所述第二超时时间为所述第一超时时间之后获取到的超时时间;
第二保存单元408;用于将所述监控标识及其对应的第二超时时间保存至所述分布式数据库中。
在一些实施例中,所述系统还包括:
处理单元409,用于根据时间轮注册中心构建或恢复所述时间轮。
参考图6,本申请实施例提供了一种服务器600,可以包括一个或者一个以上处理核心的处理器601、一个或一个以上计算机可读存储介质的存储器602、射频(RadioFrequency,RF)电路603、电源604、输入单元605、以及显示单元606等部件。本领域技术人员可以理解,图5中示出的服务器结构并不构成对服务器的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。其中:
处理器601是该服务器的控制中心,利用各种接口和线路连接整个服务器的各个部分,通过运行或执行存储在存储器602内的软件程序和/或模块,以及调用存储在存储器602内的数据,执行服务器的各种功能和处理数据,从而对服务器进行整体监控。可选的,处理器601可包括一个或多个处理核心;优选的,处理器601可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器601中。
存储器602可用于存储软件程序以及模块,处理器601通过运行存储在存储器602的软件程序以及模块,从而执行各种功能应用以及数据处理。
RF电路603可用于收发信息过程中,信号的接收和发送。
服务器还包括给各个部件供电的电源604(比如电池),优选的,电源可以通过电源管理系统与处理器601逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。
该服务器还可包括输入单元605,该输入单元605可用于接收输入的数字或字符信息,以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。
该服务器还可包括显示单元606,该显示单元606可用于显示由用户输入的信息或提供给用户的信息以及服务器的各种图形用户接口,这些图形用户接口可以由图形、文本、图标、视频和其任意组合来构成。具体在本实施例中,服务器中的处理器601会按照如下的指令,将一个或一个以上的应用程序的进程对应的可执行文件加载到存储器602中,并由处理器601来运行存储在存储器602中的应用程序,从而实现各种功能,如下:
获取监控标识及其对应的第一超时时间;
根据所述第一超时时间从时间轮中确定目标刻度;
根据所述目标刻度以及所述时间轮的时间轮标识确定所述监控标识的前缀;
保存所述前缀、所述监控标识及其对应关系保存至分布式数据库中;
当所述时间轮走到所述目标刻度时,根据所述目标刻度以及所述时间轮标识从所述分布式数据库中提取所述监控标识;
基于分布式计算模块根据所述监控标识所对应的最新超时时间确定所述监控标识是否超时,所述最新超时时间为最接近当前时刻接收到的超时时间。
由上可知,本申请实施例中,事件超时监控系统获取监控标识及其对应的第一超时时间;然后根据第一超时时间从时间轮中确定目标刻度;根据目标刻度以及时间轮的时间轮标识确定监控标识的前缀;保存前缀、监控标识及其对应关系保存至分布式数据库中;当时间轮走到目标刻度时,会根据目标刻度以及时间轮标识从分布式数据库中提取监控标识;最后基于分布式计算模块根据监控标识所对应的最新超时时间确定监控标识是否超时。本申请实施例可以根据目标刻度和时间轮标识构成的前缀将监控标识保存至分布式数据库中,并且当时间轮走到目标刻度时,可以根据目标刻度和时间轮标识从分布式数据库中快速提取监控标识,然后利用分布式计算模块确定该监控标识是否超时,故本申请可以实现海量数据的超时监控。
本领域普通技术人员可以理解,上述实施例的各种方法中的全部或部分步骤可以通过指令来完成,或通过指令控制相关的硬件来完成,该指令可以存储于一计算机可读存储介质中,并由处理器进行加载和执行。
为此,本申请实施例提供一种存储介质,其中存储有多条指令,该指令能够被处理器进行加载,以执行本申请实施例所提供的任一种事件超时监控方法中的步骤。例如,该指令可以执行如下步骤:
获取监控标识及其对应的第一超时时间;
根据所述第一超时时间从时间轮中确定目标刻度;
根据所述目标刻度以及所述时间轮的时间轮标识确定所述监控标识的前缀;
保存所述前缀、所述监控标识及其对应关系保存至分布式数据库中;
当所述时间轮走到所述目标刻度时,根据所述目标刻度以及所述时间轮标识从所述分布式数据库中提取所述监控标识;
基于分布式计算模块根据所述监控标识所对应的最新超时时间确定所述监控标识是否超时,所述最新超时时间为最接近当前时刻接收到的超时时间。
以上各个操作的具体实施可参见前面的实施例,在此不再赘述。
其中,该存储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取记忆体(RAM,Random Access Memory)、磁盘或光盘等。
由于该存储介质中所存储的指令,可以执行本申请实施例所提供的任一种事件超时监控方法中的步骤,因此,可以实现本申请实施例所提供的任一种事件超时监控方法所能实现的有益效果,详见前面的实施例,在此不再赘述。
以上对本申请实施例所提供的一种事件超时监控方法、系统和存储介质进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
Claims (11)
1.一种事件超时监控方法,其特征在于,包括:
获取监控标识及其对应的第一超时时间;
根据所述第一超时时间从时间轮中确定目标刻度;
根据所述目标刻度以及所述时间轮的时间轮标识确定所述监控标识的前缀;
保存所述前缀、所述监控标识及其对应关系保存至分布式数据库中;
当所述时间轮走到所述目标刻度时,根据所述目标刻度以及所述时间轮标识从所述分布式数据库中提取所述监控标识;
基于分布式计算模块根据所述监控标识所对应的最新超时时间确定所述监控标识是否超时,所述最新超时时间为最接近当前时刻接收到的超时时间。
2.根据权利要求1所述的方法,其特征在于,所述基于分布式计算模块根据所述监控标识所对应的最新超时时间确定所述监控标识是否超时,包括:
基于所述分布式计算模块根据所述监控标识从所述分布式数据库中获取最新超时时间;
基于所述分布式计算模块根据所述最新超时时间与当前时间确定所述监控标识是否超时。
3.根据权利要求1所述的方法,其特征在于,所述根据所述目标刻度以及所述时间轮的时间轮标识确定所述监控标识的前缀,包括:
对所述目标刻度以及所述时间轮标识进行一致性哈希处理;
将进行过所述一致性哈希处理的目标刻度以及时间轮标识确定为所述前缀。
4.根据权利要求1所述的方法,其特征在于,所述当所述时间轮走到所述目标刻度时,根据所述目标刻度以及所述时间轮标识从所述分布式数据库中提取所述监控标识,包括:
当所述时间轮走到所述目标刻度时,将所述目标刻度以及所述时间轮标识分发至队列中;
通过所述队列将所述目标刻度以及所述时间轮标识发送至分布式计算模块中;
基于所述分布式计算模块根据所述目标刻度以及所述时间轮标识从所述分布式数据库中提取所述监控标识。
5.根据权利要求4所述的方法,其特征在于,所述基于所述分布式计算模块根据所述目标刻度以及所述时间轮标识从所述分布式数据库中提取所述监控标识,包括:
基于所述分布式计算模块根据所述目标刻度以及所述时间轮标识从所述分布式数据库中确定目标分区;
从所述目标分区中提取所述监控标识。
6.根据权利要求1至5中任一项所述的方法,其特征在于,所述保存所述前缀、所述监控标识及其对应关系保存至分布式数据库中,包括:
采用分区技术在所述分布式数据库中按照预置规则保存所述前缀、所述监控标识及其对应关系。
7.根据权利要求1至5中任一项所述的方法,其特征在于,所述方法还包括:
获取所述监控标识及其对应的第二超时时间,所述第二超时时间为所述第一超时时间之后获取到的超时时间;
将所述监控标识及其对应的第二超时时间保存至所述分布式数据库中。
8.根据权利要求1至5中任一项所述的方法,其特征在于,所述获取监控标识及其对应的第一超时时间之前,所述方法还包括:
根据时间轮注册中心构建或恢复所述时间轮。
9.一种事件超时监控系统,其特征在于,包括:
第一获取单元,用于获取监控标识及其对应的第一超时时间;
第一确定单元,用于根据所述第一超时时间从时间轮中确定目标刻度;
第二确定单元,用于根据所述目标刻度以及所述时间轮的时间轮标识确定所述监控标识的前缀;
第一保存单元,用于保存所述前缀、所述监控标识及其对应关系保存至分布式数据库中;
提取单元,用于当所述时间轮走到所述目标刻度时,根据所述目标刻度以及所述时间轮标识从所述分布式数据库中提取所述监控标识;
第三确定单元,用于基于分布式计算模块根据所述监控标识所对应的最新超时时间确定所述监控标识是否超时,所述最新超时时间为最接近当前时刻接收到的超时时间。
10.一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行如权利要求1至7中任意一项所述的事件超时监控方法中的步骤。
11.一种存储介质,其特征在于,所述存储介质存储有多条指令,所述指令适于处理器进行加载,以执行权利要求1至7任一项所述的事件超时监控方法中的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910214009.5A CN111722973B (zh) | 2019-03-20 | 2019-03-20 | 一种事件超时监控方法、系统及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910214009.5A CN111722973B (zh) | 2019-03-20 | 2019-03-20 | 一种事件超时监控方法、系统及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111722973A true CN111722973A (zh) | 2020-09-29 |
CN111722973B CN111722973B (zh) | 2023-05-23 |
Family
ID=72563378
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910214009.5A Active CN111722973B (zh) | 2019-03-20 | 2019-03-20 | 一种事件超时监控方法、系统及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111722973B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114879942A (zh) * | 2022-05-20 | 2022-08-09 | 北京宇信科技集团股份有限公司 | 分布式时间轮分组注册的校验方法、装置、介质和设备 |
CN117056059A (zh) * | 2023-10-12 | 2023-11-14 | 常州楠菲微电子有限公司 | 定时器实现方法、装置、存储介质及电子设备 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040019542A1 (en) * | 2002-07-26 | 2004-01-29 | Ubs Painewebber Inc. | Timesheet reporting and extraction system and method |
CN102137145A (zh) * | 2010-12-03 | 2011-07-27 | 华为技术有限公司 | 分布式内容管理的方法、装置及系统 |
CN104765749A (zh) * | 2014-01-07 | 2015-07-08 | 阿里巴巴集团控股有限公司 | 一种数据存储方法及装置 |
CN105760378A (zh) * | 2014-12-15 | 2016-07-13 | 阿里巴巴集团控股有限公司 | 一种事务状态监控方法与设备 |
CN109146381A (zh) * | 2018-08-23 | 2019-01-04 | 北京顺丰同城科技有限公司 | 物流数据监控方法、装置、电子设备及计算机存储介质 |
-
2019
- 2019-03-20 CN CN201910214009.5A patent/CN111722973B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040019542A1 (en) * | 2002-07-26 | 2004-01-29 | Ubs Painewebber Inc. | Timesheet reporting and extraction system and method |
CN102137145A (zh) * | 2010-12-03 | 2011-07-27 | 华为技术有限公司 | 分布式内容管理的方法、装置及系统 |
CN104765749A (zh) * | 2014-01-07 | 2015-07-08 | 阿里巴巴集团控股有限公司 | 一种数据存储方法及装置 |
CN105760378A (zh) * | 2014-12-15 | 2016-07-13 | 阿里巴巴集团控股有限公司 | 一种事务状态监控方法与设备 |
CN109146381A (zh) * | 2018-08-23 | 2019-01-04 | 北京顺丰同城科技有限公司 | 物流数据监控方法、装置、电子设备及计算机存储介质 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114879942A (zh) * | 2022-05-20 | 2022-08-09 | 北京宇信科技集团股份有限公司 | 分布式时间轮分组注册的校验方法、装置、介质和设备 |
CN114879942B (zh) * | 2022-05-20 | 2023-02-03 | 北京宇信科技集团股份有限公司 | 分布式时间轮分组注册的校验方法、装置、介质和设备 |
CN117056059A (zh) * | 2023-10-12 | 2023-11-14 | 常州楠菲微电子有限公司 | 定时器实现方法、装置、存储介质及电子设备 |
CN117056059B (zh) * | 2023-10-12 | 2024-02-02 | 常州楠菲微电子有限公司 | 定时器实现方法、装置、存储介质及电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN111722973B (zh) | 2023-05-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104899204B (zh) | 数据存储方法及装置 | |
CN111770002B (zh) | 测试数据转发控制方法、装置、可读存储介质和电子设备 | |
CN104202373A (zh) | 移动云计算迁移方法及系统 | |
CN113656179A (zh) | 云计算资源的调度方法及装置、电子设备和存储介质 | |
CN111586126A (zh) | 小程序预下载方法、装置、设备及存储介质 | |
CN111722973A (zh) | 一种事件超时监控方法、系统及存储介质 | |
CN106844744B (zh) | 点击模型应用方法、装置及搜索系统 | |
CN115023697A (zh) | 数据查询方法、装置及服务器 | |
CN111737443B (zh) | 答案文本的处理方法和装置、关键文本的确定方法 | |
CN112527848A (zh) | 基于多数据源的报表数据查询方法、装置、系统及存储介质 | |
CN112559923A (zh) | 网址资源推荐方法、装置、电子设备及计算机存储介质 | |
CN106570059A (zh) | 文件打开方法及系统 | |
CN116627771A (zh) | 日志采集方法、装置、电子设备和可读存储介质 | |
CN115563160A (zh) | 数据处理方法、装置、计算机设备和计算机可读存储介质 | |
CN115906064A (zh) | 一种检测方法、装置、电子设备、计算机可读介质 | |
CN112261595A (zh) | 事件提醒方法、装置、存储介质及移动终端 | |
CN115145964A (zh) | 一种时序数据整合方法、装置、设备及介质 | |
CN112579833B (zh) | 基于用户操作数据的业务关联关系获取方法及装置 | |
CN111400608B (zh) | 数据处理方法及装置、存储介质及电子设备 | |
CN110401570B (zh) | 告警方法、装置、系统、设备及可读存储介质 | |
CN114254650A (zh) | 一种信息处理方法、装置、设备及介质 | |
CN109388658B (zh) | 一种数据确定方法和装置 | |
CN114020651B (zh) | 基于接口地址去重方法、装置、设备及可读存储介质 | |
CN114339642B (zh) | 伴随用户的识别方法、装置、设备及介质 | |
CN112416910A (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 |