CN115484179A - 一种设备告警数据防抖方法 - Google Patents

一种设备告警数据防抖方法 Download PDF

Info

Publication number
CN115484179A
CN115484179A CN202211126914.3A CN202211126914A CN115484179A CN 115484179 A CN115484179 A CN 115484179A CN 202211126914 A CN202211126914 A CN 202211126914A CN 115484179 A CN115484179 A CN 115484179A
Authority
CN
China
Prior art keywords
time
timertask
alarm
wheel
interval
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
Application number
CN202211126914.3A
Other languages
English (en)
Other versions
CN115484179B (zh
Inventor
曹永杰
吴廷
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hangzhou Jineng Technology Co ltd
Original Assignee
Hangzhou Jineng Technology Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hangzhou Jineng Technology Co ltd filed Critical Hangzhou Jineng Technology Co ltd
Priority to CN202211126914.3A priority Critical patent/CN115484179B/zh
Publication of CN115484179A publication Critical patent/CN115484179A/zh
Application granted granted Critical
Publication of CN115484179B publication Critical patent/CN115484179B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/02Capturing of monitoring data
    • H04L43/028Capturing of monitoring data by filtering
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0604Management of faults, events, alarms or notifications using filtering, e.g. reduction of information by using priority, element types, position or time
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0631Management of faults, events, alarms or notifications using root cause analysis; using analysis of correlation between notifications, alarms or events based on decision criteria, e.g. hierarchy, tree or time analysis
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/16Threshold monitoring

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Measurement Of Predetermined Time Intervals (AREA)
  • Electric Clocks (AREA)

Abstract

本发明公开了一种设备告警数据防抖方法,属于数据处理技术领域,包括对状态量相关波动数据的过滤、对采集数据值相关波动数据的过滤,其特征在于:步骤1:通过设置时间间隔过滤状态量相关波动数据;步骤2:通过设置告警值、恢复值过滤采集数据值相关波动数据;本发明有效地减少了因数据波动产生的大量无效告警,显著的提升了对设备监测的效果及数据处理的效率。

Description

一种设备告警数据防抖方法
技术领域
本发明涉及数据处理技术领域,具体是一种设备告警数据防抖方法。
背景技术
物联网快速发展的时代涉及大量对数据的处理工作,这其中就包括对设备进行监测并获取数据,以及对数据分析后的告警,目前,这种告警包括两种:(1)状态量告警,即监测到单一状态变更时发送告警信息;(2)采集数据值告警,即采集的数据达到某阈值时发送告警信息;但上述两种告警方式都存在一个问题,即,当数据出现极端波动时,会产生很多无效的告警,比如,被监测设备采用的4G流量卡,在网络较差的环境下会出现频繁的状态变更,在离线状态和在线状态之间频繁变化,被监测设备的电表监测电压的阈值是242V,负载小的时候电压可能会在242V上下波动,设备监测的数据一般在15分钟上报一次,网络信号的波动也不会影响数据上报,如此就会频繁出现状态量告警和电压越上限告警,当监测到的状态和数据在短时间内恢复时,大量频繁的告警就形成无效告警,而无效告警对数据的处理并无益处,甚至会占用过多的空间,增加无谓的工作,基于这种情况,如何才能对数据波动产生的无效告警进行有效过滤,越来越成为相关技术人员急需解决的问题。
发明内容
为了解决上述技术问题,本发明提供一种设备告警数据防抖方法。
一种设备告警数据防抖方法,包括对状态量相关波动数据的过滤、对采集数据值相关波动数据的过滤,其特征在于:
步骤1:通过设置时间间隔过滤状态量相关波动数据;
步骤2:通过设置告警值、恢复值过滤采集数据值相关波动数据;
关于步骤1,针对状态量告警,设置一个时间间隔,在该时间间隔内状态恢复,则将该状态变更视为数据波动,不触发状态量告警,在该时间间隔内状态未恢复,则触发状态量告警;
关于步骤2,针对采集数据值告警,设置告警阈值和告警恢复阈值,其中,告警阈值包括上限告警阈值、下限告警阈值,告警恢复阈值包括上限恢复阈值、下限恢复阈值,上限告警阈值大于上限恢复阈值,下限告警阈值小于下限恢复阈值;
所采集数据值第一次达到上限告警阈值时,则触发越上限告警,所采集数据值在上限告警阈值附近波动并且不达到上限恢复阈值时,不触发任何告警,所采集数据值第一次达到上限恢复阈值时,触发上限恢复告警;
所采集数据值第一次达到下限告警阈值时,则触发越下限告警,所采集数据值在下限告警阈值附近波动并且不达到下限恢复阈值时,不触发任何告警,所采集数据值第一次达到下限恢复阈值时,触发下限恢复告警。
进一步的,一种设备告警数据防抖方法,包括缓存,所述缓存包括不指定过期时间的缓存、指定过期时间的缓存,此时需要引入相关概念:
定义一:不指定过期时间的缓存,将所有需要缓存的信息保存在一个对象中,格式为{“唯一key”:{“缓存内容”}},通过“唯一key”查询、保存和删除对应的缓存信息;
定义二:指定过期时间的缓存,使用时间轮(TimingWheel)模式,将缓存任务存储在环形队列,底层采用数组实现,数组中的每个元素存放一个定时任务列表(TimerTaskList),TimerTaskList是一个环形的双向链表,链表中的每一项都表示定时任务项(TimerTaskEntry),其中封装真正的定时任务(TimerTask);
时间轮包括时间格、表盘指针(currentTime),每个时间格代表当前时间轮的基本时间跨度(tickMs),时间轮的时间格的个数(wheelSize)固定,那么整个时间轮的总体时间跨度(interval)即为tickMs×wheelSize,currentTime是tickMs的整数倍,用于表示时间轮当前所处的时间,currentTime将整个时间轮划分为到期部分和未到期部分,currentTime当前指向的时间格属于到期部分,表示刚好到期,需要处理此时间格所对应的TimerTaskList的所有任务;
定义三:时间轮的运行方法如下
(1)假设时间轮的tickMs=1ms,wheelSize=20,那么interval=tickMs×wheelSize=20ms,初始状态下,currentTime指向时间格0;
假设此时一个定时为2ms的TimerTask插入进来,则存放到时间格为2的TimerTaskList中;
随着时间推移,currentTime不断向前推进,2ms后,即到达时间格2;
此时即需对时间格2所对应的TimeTaskList中的TimerTask做相应的到期操作;
此时若有另一个定时为8ms的TimerTask插入进来,则存放到时间格为10的TimerTaskList中,currentTime再过8ms后即指向时间格10,此时即需对时间格10所对应的TimeTaskList中的TimerTask做相应的到期操作;
如果在定时为8ms的TimerTask插入的同时,有一个定时为19ms的TimerTask插入进来,新插入的TimerTask所在的TimerTaskEntry即复用与定时为8ms的TimerTask相同的TimerTaskList,故其插入位置为原本已经到期的时间格1中;
整个时间轮的总体跨度不变,随着currentTime的不断推进,当前时间轮所能处理的时间段也在不断后移,总体时间范围在currentTime和currentTime+interval之间;
(2)为满足时间跨度更大的TimerTask,时间轮可设置多层,设置方法如下:
第一层时间轮的tickMs=1ms,wheelSize=20,interval=20ms,每一层时间轮的wheelSize均固定为20,第二层时间轮的tickMs为第一层时间轮的interval,即为20ms,如此第二层时间轮的interval为400ms,以此类推,第三层时间轮的tickMs为第二层时间轮的interval,即为400ms,第三层时间轮的interval为8000ms;
假设此时一个定时为350ms的TimerTask插入进来,显然第一层时间轮不能满足条件,故升级至第二层时间轮,最终被插入到第二层时间轮中时间格17所对应的TimerTaskList中;
如果此时另有一个定时为450ms的TimerTask插入进来,那么显然第二层时间轮也无法满足条件,故升级至第三层时间轮,最终被插入到第三层时间轮中时间格1所对应的TimerTaskList中,需要说明的是,到期时间在[400ms,800ms)区间的任务(比如定时为446ms、455ms以及473ms的TimerTask)均被放入第三层时间轮的时间格1对应的TimerTaskList中,时间格1对应的TimerTaskList的超时时间为400ms;
随着时间流逝,当次TimerTaskList到期之时,原本定时为450ms的TimerTask还剩50ms的时间,还不能执行该TimerTask的到期操作,此时即涉及到时间轮降级的操作,剩余时间为50ms的TimerTask需重新提交到相应层级的时间轮,此时第一层时间轮的interval不够,而第二层时间轮的interval足够,所以该剩余时间为50ms的TimerTask被放到第二层时间轮到期时间为[40ms,60ms)的时间格中,再经历40ms后,该TimerTask最终剩余10ms,仍然不能立即执行到期操作,故再一次进行时间轮的降级,该TimerTask被添加到第一层时间轮到期时间为[10ms,11ms)的时间格中,之后再经历10ms后,该TimerTask真正到期,最终执行相应的到期操作;
定理:执行特定的TimerTask时,通过“唯一key”在不指定过期时间的缓存中获取对应的缓存信息,如果缓存信息为空,则视为该信息已被删除,不执行内容直接跳过,否则根据缓存信息执行对应操作。
本发明的一种设备告警数据防抖方法的有益效果为:
通过设置时间间隔有效地实现了对状态量相关波动数据的过滤,通过设置告警值、恢复值有效地实现了对采集数据值相关波动数据的过滤,如此有效地减少了因数据波动产生的大量无效告警,显著的提升了对设备监测的效果及数据处理的效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,但并不是对本发明保护范围的限制。
图1为本发明的单个时间轮示意图;
图2为本发明的多个时间轮示意图;
图3为本发明的状态变更流程图;
图4为本发明的设备告警流程图;
具体实施方式
为使说明更加清楚,结合说明书附图图1至图4,对本发明的一种设备告警数据防抖方法作进一步描述。
一种设备告警数据防抖方法,包括对状态量相关波动数据的过滤、对采集数据值相关波动数据的过滤,其特征在于:
步骤1:通过设置时间间隔过滤状态量相关波动数据;
步骤2:通过设置告警值、恢复值过滤采集数据值相关波动数据;
关于步骤1,针对状态量告警,设置一个时间间隔,在该时间间隔内状态恢复,则将该状态变更视为数据波动,不触发状态量告警,在该时间间隔内状态未恢复,则触发状态量告警;
关于步骤2,针对采集数据值告警,设置告警阈值和告警恢复阈值,其中,告警阈值包括上限告警阈值、下限告警阈值,告警恢复阈值包括上限恢复阈值、下限恢复阈值,上限告警阈值大于上限恢复阈值,下限告警阈值小于下限恢复阈值;
所采集数据值第一次达到上限告警阈值时,则触发越上限告警,所采集数据值在上限告警阈值附近波动并且不达到上限恢复阈值时,不触发任何告警,所采集数据值第一次达到上限恢复阈值时,触发上限恢复告警;
所采集数据值第一次达到下限告警阈值时,则触发越下限告警,所采集数据值在下限告警阈值附近波动并且不达到下限恢复阈值时,不触发任何告警,所采集数据值第一次达到下限恢复阈值时,触发下限恢复告警。
进一步的,一种设备告警数据防抖方法,包括缓存,所述缓存包括不指定过期时间的缓存、指定过期时间的缓存,此时需要引入相关概念:
定义一:不指定过期时间的缓存,将所有需要缓存的信息保存在一个对象中,格式为{“唯一key”:{“缓存内容”}},通过“唯一key”查询、保存和删除对应的缓存信息;
定义二:指定过期时间的缓存,使用时间轮(TimingWheel)模式,将缓存任务存储在环形队列,底层采用数组实现,数组中的每个元素存放一个定时任务列表(TimerTaskList),TimerTaskList是一个环形的双向链表,链表中的每一项都表示定时任务项(TimerTaskEntry),其中封装真正的定时任务(TimerTask);
时间轮包括时间格、表盘指针(currentTime),每个时间格代表当前时间轮的基本时间跨度(tickMs),时间轮的时间格的个数(wheelSize)固定,那么整个时间轮的总体时间跨度(interval)即为tickMs×wheelSize,currentTime是tickMs的整数倍,用于表示时间轮当前所处的时间,currentTime将整个时间轮划分为到期部分和未到期部分,currentTime当前指向的时间格属于到期部分,表示刚好到期,需要处理此时间格所对应的TimerTaskList的所有任务;
定义三:时间轮的运行方法如下
(1)假设时间轮的tickMs=1ms,wheelSize=20,那么interval=tickMs×wheelSize=20ms,初始状态下,currentTime指向时间格0;
假设此时一个定时为2ms的TimerTask插入进来,则存放到时间格为2的TimerTaskList中;
随着时间推移,currentTime不断向前推进,2ms后,即到达时间格2;
此时即需对时间格2所对应的TimeTaskList中的TimerTask做相应的到期操作;
此时若有另一个定时为8ms的TimerTask插入进来,则存放到时间格为10的TimerTaskList中,currentTime再过8ms后即指向时间格10,此时即需对时间格10所对应的TimeTaskList中的TimerTask做相应的到期操作;
如果在定时为8ms的TimerTask插入的同时,有一个定时为19ms的TimerTask插入进来,新插入的TimerTask所在的TimerTaskEntry即复用与定时为8ms的TimerTask相同的TimerTaskList,故其插入位置为原本已经到期的时间格1中;
整个时间轮的总体跨度不变,随着currentTime的不断推进,当前时间轮所能处理的时间段也在不断后移,总体时间范围在currentTime和currentTime+interval之间;
(2)为满足时间跨度更大的TimerTask,时间轮可设置多层,设置方法如下:
第一层时间轮的tickMs=1ms,wheelSize=20,interval=20ms,每一层时间轮的wheelSize均固定为20,第二层时间轮的tickMs为第一层时间轮的interval,即为20ms,如此第二层时间轮的interval为400ms,以此类推,第三层时间轮的tickMs为第二层时间轮的interval,即为400ms,第三层时间轮的interval为8000ms;
假设此时一个定时为350ms的TimerTask插入进来,显然第一层时间轮不能满足条件,故升级至第二层时间轮,最终被插入到第二层时间轮中时间格17所对应的TimerTaskList中;
如果此时另有一个定时为450ms的TimerTask插入进来,那么显然第二层时间轮也无法满足条件,故升级至第三层时间轮,最终被插入到第三层时间轮中时间格1所对应的TimerTaskList中,需要说明的是,到期时间在[400ms,800ms)区间的任务(比如定时为446ms、455ms以及473ms的TimerTask)均被放入第三层时间轮的时间格1对应的TimerTaskList中,时间格1对应的TimerTaskList的超时时间为400ms;
随着时间流逝,当次TimerTaskList到期之时,原本定时为450ms的TimerTask还剩50ms的时间,还不能执行该TimerTask的到期操作,此时即涉及到时间轮降级的操作,剩余时间为50ms的TimerTask需重新提交到相应层级的时间轮,此时第一层时间轮的interval不够,而第二层时间轮的interval足够,所以该剩余时间为50ms的TimerTask被放到第二层时间轮到期时间为[40ms,60ms)的时间格中,再经历40ms后,该TimerTask最终剩余10ms,仍然不能立即执行到期操作,故再一次进行时间轮的降级,该TimerTask被添加到第一层时间轮到期时间为[10ms,11ms)的时间格中,之后再经历10ms后,该TimerTask真正到期,最终执行相应的到期操作;
定理:执行特定的TimerTask时,通过“唯一key”在不指定过期时间的缓存中获取对应的缓存信息,如果缓存信息为空,则视为该信息已被删除,不执行内容直接跳过,否则根据缓存信息执行对应操作。
本发明的一种设备告警数据防抖方法的工作原理为:
(1)监测设备状态变更
当系统监测到设备状态发生变更后,如果设备是离线,则将该设备和当前时间缓存,如:A设备编号为T123,在2022-06-30 08:57:33时间离线,如果需要缓存10s,即时间间隔为10s,则时间为:1656550653000+10*1000=1656550663000,缓存信息为{“expireMs”:1656550663000,”deviceOffLine-T123”:{“id”:”T123”,”event”:”deviceOffLine”,”time”:”2022-06-30 08:57:33”}},该信息缓存时分为定时和缓存两部分,定时部分为{“expireMs”:1656550663000,”key”:”deviceOffLine-T123”},缓存部分为{”deviceOffLine-T123”:{“id”:”T123”,”event”:”deviceOffLine”,”time”:”2022-06-3008:57:33”}},时间大于等于1656550663000之后通过deviceOffLine-T123获取缓存信息,正产返回{“id”:”T123”,”event”:”deviceOffLine”,”time”:”2022-06-30 08:57:33”},通过事件(event)知道该信息需要做离线告警,通过id知道设备,通过time知道时间,此时就可以知道设备T123在2022-06-30 08:57:33离线,如果返回数据为空则视为该数据已经被清除且不做任何处理,如果设备状态是上线,则通过使用deviceOffLine-加上设备编号形成唯一key从缓存获取设备信息和离线时间,如果获取不到则直接跳过,否则将当前时间和缓存中的时间(time)对比,如果当前时间减去离线时间大于时间间隔(10s),说明已经产生离线告警,需要推送离线告警恢复,然后删除缓存信息,如果时间间隔小于时间间隔(10s),则直接删除缓存信息;
(2)处理设备采集数据值告警
以设备电压的采集数据值为例说明该流程,系统采集到设备(编号:T123)电压数据后,如果电压大于242V,从缓存中查找该设备是否有告警信息,缓存告警信息电压越上限缓存为:{“deviceUUp-T123”:{“event”:”deviceUUP”,“time”:”2022-06-30 10:54:30”}},电压越下限缓存为:{“deviceUDown-T123”:{“event”:”deviceUDown”,“time”:”2022-06-30 10:54:30”}},如果有告警信息则判断当前上报的电压值是否满足告警恢复值,通过设备编号查看是否有电压越上限key为deviceUUp-T123,如果有则判断当前电压是否小于240V,如果小于则推送告警恢复且通过key删除缓存电压越上限信息,电压越下限也是同理,通过电压越下限key:deviceUDown-T123查看是否有电压越下限,如果没有则跳过,如果有则判断当前电压是否大于199V,如果大于则推送电压告警恢复且通过key删除缓存电压越下限信息。
以上,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何不经过创造性劳动想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求书所限定的保护范围为准。

Claims (2)

1.一种设备告警数据防抖方法,包括对状态量相关波动数据的过滤、对采集数据值相关波动数据的过滤,其特征在于:
步骤1:通过设置时间间隔过滤状态量相关波动数据;
步骤2:通过设置告警值、恢复值过滤采集数据值相关波动数据;
关于步骤1,针对状态量告警,设置一个时间间隔,在该时间间隔内状态恢复,则将该状态变更视为数据波动,不触发状态量告警,在该时间间隔内状态未恢复,则触发状态量告警;
关于步骤2,针对采集数据值告警,设置告警阈值和告警恢复阈值,其中,告警阈值包括上限告警阈值、下限告警阈值,告警恢复阈值包括上限恢复阈值、下限恢复阈值,上限告警阈值大于上限恢复阈值,下限告警阈值小于下限恢复阈值;
所采集数据值第一次达到上限告警阈值时,则触发越上限告警,所采集数据值在上限告警阈值附近波动并且不达到上限恢复阈值时,不触发任何告警,所采集数据值第一次达到上限恢复阈值时,触发上限恢复告警;
所采集数据值第一次达到下限告警阈值时,则触发越下限告警,所采集数据值在下限告警阈值附近波动并且不达到下限恢复阈值时,不触发任何告警,所采集数据值第一次达到下限恢复阈值时,触发下限恢复告警。
2.根据权利要求1所述的一种设备告警数据防抖方法,其特征在于,包括缓存,所述缓存包括不指定过期时间的缓存、指定过期时间的缓存,此时需要引入相关概念:
定义一:不指定过期时间的缓存,将所有需要缓存的信息保存在一个对象中,格式为{“唯一key”:{“缓存内容”}},通过“唯一key”查询、保存和删除对应的缓存信息;
定义二:指定过期时间的缓存,使用时间轮(TimingWheel)模式,将缓存任务存储在环形队列,底层采用数组实现,数组中的每个元素存放一个定时任务列表(TimerTaskList),TimerTaskList是一个环形的双向链表,链表中的每一项都表示定时任务项(TimerTaskEntry),其中封装真正的定时任务(TimerTask);
时间轮包括时间格、表盘指针(currentTime),每个时间格代表当前时间轮的基本时间跨度(tickMs),时间轮的时间格的个数(wheelSize)固定,那么整个时间轮的总体时间跨度(interval)即为tickMs×wheelSize,currentTime是tickMs的整数倍,用于表示时间轮当前所处的时间,currentTime将整个时间轮划分为到期部分和未到期部分,currentTime当前指向的时间格属于到期部分,表示刚好到期,需要处理此时间格所对应的TimerTaskList的所有任务;
定义三:时间轮的运行方法如下
(1)假设时间轮的tickMs=1ms,wheelSize=20,那么interval=tickMs×wheelSize=20ms,初始状态下,currentTime指向时间格0;
假设此时一个定时为2ms的TimerTask插入进来,则存放到时间格为2的TimerTaskList中;
随着时间推移,currentTime不断向前推进,2ms后,即到达时间格2;
此时即需对时间格2所对应的TimeTaskList中的TimerTask做相应的到期操作;
此时若有另一个定时为8ms的TimerTask插入进来,则存放到时间格为10的TimerTaskList中,currentTime再过8ms后即指向时间格10,此时即需对时间格10所对应的TimeTaskList中的TimerTask做相应的到期操作;
如果在定时为8ms的TimerTask插入的同时,有一个定时为19ms的TimerTask插入进来,新插入的TimerTask所在的TimerTaskEntry即复用与定时为8ms的TimerTask相同的TimerTaskList,故其插入位置为原本已经到期的时间格1中;
整个时间轮的总体跨度不变,随着currentTime的不断推进,当前时间轮所能处理的时间段也在不断后移,总体时间范围在currentTime和currentTime+interval之间;
(2)为满足时间跨度更大的TimerTask,时间轮可设置多层,设置方法如下:
第一层时间轮的tickMs=1ms,wheelSize=20,interval=20ms,每一层时间轮的wheelSize均固定为20,第二层时间轮的tickMs为第一层时间轮的interval,即为20ms,如此第二层时间轮的interval为400ms,以此类推,第三层时间轮的tickMs为第二层时间轮的interval,即为400ms,第三层时间轮的interval为8000ms;
假设此时一个定时为350ms的TimerTask插入进来,显然第一层时间轮不能满足条件,故升级至第二层时间轮,最终被插入到第二层时间轮中时间格17所对应的TimerTaskList中;
如果此时另有一个定时为450ms的TimerTask插入进来,那么显然第二层时间轮也无法满足条件,故升级至第三层时间轮,最终被插入到第三层时间轮中时间格1所对应的TimerTaskList中,需要说明的是,到期时间在[400ms,800ms)区间的任务(比如定时为446ms、455ms以及473ms的TimerTask)均被放入第三层时间轮的时间格1对应的TimerTaskList中,时间格1对应的TimerTaskList的超时时间为400ms;
随着时间流逝,当次TimerTaskList到期之时,原本定时为450ms的TimerTask还剩50ms的时间,还不能执行该TimerTask的到期操作,此时即涉及到时间轮降级的操作,剩余时间为50ms的TimerTask需重新提交到相应层级的时间轮,此时第一层时间轮的interval不够,而第二层时间轮的interval足够,所以该剩余时间为50ms的TimerTask被放到第二层时间轮到期时间为[40ms,60ms)的时间格中,再经历40ms后,该TimerTask最终剩余10ms,仍然不能立即执行到期操作,故再一次进行时间轮的降级,该TimerTask被添加到第一层时间轮到期时间为[10ms,11ms)的时间格中,之后再经历10ms后,该TimerTask真正到期,最终执行相应的到期操作;
定理:执行特定的TimerTask时,通过“唯一key”在不指定过期时间的缓存中获取对应的缓存信息,如果缓存信息为空,则视为该信息已被删除,不执行内容直接跳过,否则根据缓存信息执行对应操作。
CN202211126914.3A 2022-09-16 2022-09-16 一种设备告警数据防抖方法 Active CN115484179B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211126914.3A CN115484179B (zh) 2022-09-16 2022-09-16 一种设备告警数据防抖方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211126914.3A CN115484179B (zh) 2022-09-16 2022-09-16 一种设备告警数据防抖方法

Publications (2)

Publication Number Publication Date
CN115484179A true CN115484179A (zh) 2022-12-16
CN115484179B CN115484179B (zh) 2024-04-16

Family

ID=84424299

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211126914.3A Active CN115484179B (zh) 2022-09-16 2022-09-16 一种设备告警数据防抖方法

Country Status (1)

Country Link
CN (1) CN115484179B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116302455A (zh) * 2023-05-23 2023-06-23 深圳前海环融联易信息科技服务有限公司 定时任务的处理方法及装置、存储介质、计算机设备

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6115826A (en) * 1997-09-16 2000-09-05 Tandem Computers, Inc. Interval-timing facility using overbuilt hierarchical timing wheels
CN101014179A (zh) * 2007-02-14 2007-08-08 中兴通讯股份有限公司 一种通信系统中告警防抖的实现装置和实现方法
CN101917303A (zh) * 2010-07-28 2010-12-15 中兴通讯股份有限公司 告警防抖动的处理方法及装置
CN103378981A (zh) * 2012-04-16 2013-10-30 中兴通讯股份有限公司 网管系统中振荡告警的处理方法及装置
CN105891686A (zh) * 2016-04-11 2016-08-24 国网上海市电力公司 一种局部放电无线监测系统的告警方法
CN111130867A (zh) * 2019-12-12 2020-05-08 青岛聚好联科技有限公司 一种基于物联网的智能家居设备告警方法及装置
CN111782414A (zh) * 2020-05-12 2020-10-16 北京皮尔布莱尼软件有限公司 一种延时消息处理方法及系统
CN111865709A (zh) * 2020-06-12 2020-10-30 新奇点智能科技集团有限公司 一种设备状态监控方法及智能交通云管理平台
WO2022068549A1 (zh) * 2020-09-30 2022-04-07 中国银联股份有限公司 异常告警方法、装置、设备及存储介质

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6115826A (en) * 1997-09-16 2000-09-05 Tandem Computers, Inc. Interval-timing facility using overbuilt hierarchical timing wheels
CN101014179A (zh) * 2007-02-14 2007-08-08 中兴通讯股份有限公司 一种通信系统中告警防抖的实现装置和实现方法
CN101917303A (zh) * 2010-07-28 2010-12-15 中兴通讯股份有限公司 告警防抖动的处理方法及装置
US20130177310A1 (en) * 2010-07-28 2013-07-11 Zte Corporation Process method and apparatus for preventing alarm jitter
CN103378981A (zh) * 2012-04-16 2013-10-30 中兴通讯股份有限公司 网管系统中振荡告警的处理方法及装置
CN105891686A (zh) * 2016-04-11 2016-08-24 国网上海市电力公司 一种局部放电无线监测系统的告警方法
CN111130867A (zh) * 2019-12-12 2020-05-08 青岛聚好联科技有限公司 一种基于物联网的智能家居设备告警方法及装置
CN111782414A (zh) * 2020-05-12 2020-10-16 北京皮尔布莱尼软件有限公司 一种延时消息处理方法及系统
CN111865709A (zh) * 2020-06-12 2020-10-30 新奇点智能科技集团有限公司 一种设备状态监控方法及智能交通云管理平台
WO2022068549A1 (zh) * 2020-09-30 2022-04-07 中国银联股份有限公司 异常告警方法、装置、设备及存储介质

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
ID:字节武装: "一张图理解Kafka时间轮(TimingWheel), 看不懂算我输!", pages 1, Retrieved from the Internet <URL:HTTPS://ZHUANLAN.ZHIHU.COM/P/121483218> *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116302455A (zh) * 2023-05-23 2023-06-23 深圳前海环融联易信息科技服务有限公司 定时任务的处理方法及装置、存储介质、计算机设备
CN116302455B (zh) * 2023-05-23 2023-09-01 深圳前海环融联易信息科技服务有限公司 定时任务的处理方法及装置、存储介质、计算机设备

Also Published As

Publication number Publication date
CN115484179B (zh) 2024-04-16

Similar Documents

Publication Publication Date Title
CN106656590B (zh) 一种网络设备告警消息风暴的处理方法和装置
CN115484179A (zh) 一种设备告警数据防抖方法
US20030110007A1 (en) System and method for monitoring performance metrics
CN110213125A (zh) 一种云环境下基于时序数据的异常检测系统
CN101018157A (zh) 一种告警处理方法及告警系统
WO2007075638A2 (en) System and method for monitoring system performance levels across a network
CN1278516C (zh) 网络管理系统中闪断告警的处理方法
CN112600740B (zh) 一种车联网can数据上传漏帧率的自动检测方法
WO2017185976A1 (zh) 银行卡交换中心的运营保障系统
CN103378981B (zh) 网管系统中振荡告警的处理方法及装置
CN113377559A (zh) 基于大数据的异常处理方法、装置、设备及存储介质
CN106941458A (zh) 数据传输的方法及装置
CN102891761A (zh) 设备性能预测处理方法及装置
CN114283590B (zh) 车流量高峰预测方法及装置、电子设备
CN105721719A (zh) 呼叫中心的故障检测系统及方法
CN115208059A (zh) 一种变电站动力与环境监控告警处理系统及方法
CN114253806A (zh) 一种接入层日志收集分析预警系统
CN113760669A (zh) 问题数据的告警方法及装置、电子设备、存储介质
CN113746862A (zh) 一种基于机器学习的异常流量检测方法、装置和设备
CN113347045A (zh) 一种告警消息处理方法及装置
JP2991137B2 (ja) 警報データ記録方式
CN116433347A (zh) 一种业务交易监测告警系统、方法、设备、存储介质
KR102664564B1 (ko) 장애 복구 시간을 예측할 수 있는 ami 장애 진단 시스템 및 그 방법
CN115834696B (zh) 一种数据库性能监控平台数据采集装置
CN113849337B (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