首页 / 动态权重事件处理系统和方法

动态权重事件处理系统和方法有效专利 发明

技术领域

[0001] 本发明涉及一种动态权重事件处理系统和方法,具体地说,涉及的是在高并发环境下,采用动态权重方式对多个事件源中的事件进行处理系统和方法。

相关背景技术

[0002] eSOC(企业安全运营中心)系统通过采集网络设备、安全设备、业务系统、数据库、操作系统中的大量事件,并对事件进行智能分析,以帮助运维人员快速发现业务系统中发生的安全事故。
[0003] 由于需要处理的大量实时事件,往往需要使用多台设备收集事件,并在收集完事件后对事件进行格式化、范式化、过滤和归并等操作,便于系统对事件进行智能分析。每台事件收集器需要收集多台设备发送的事件信息,再通过特定的信道,发送给智能分析系统。当被监控的系统发生异常情况时,会产生大量的事件。如果短时间内某台设备汇报大量事件,就可能堵塞上报的信道,从而影响其它设备中事件的上报。
[0004] 同时,如果某些设备比其它设备更为重要,当系统无法实时处理所有的事件请求时,这些相对重要的事件有可能被延迟处理,而优先级较低的事件反而被大量处理,以至于堵塞了信道。
[0005] 当情况严重时,事件上报的延迟甚至会影响后续分析的准确性。因此,需要有一种方法,对每台设备上报事件的处理进行控制。当优先级相等时,可以保证这些设备的事件在处理时具有公平性。这里公平性的定义为,在某段特定时间内,每台设备被发送的事件数量是机会相等的。例如,在1秒钟内,每一个被监控的系统都被允许上报100条事件。即使某台设备实际不需要发送那么多事件,但它依然拥有这样的机会,在它需要发送大量事件时,它就可以达到这样的发送速度。当优先级不同时,高优先级的事件又可以被相对快速地上报。
[0006] 至今为止,多个数据源事件在一个特定信道中发送,标准的解决方案是用多个线程来分别管理每个数据源的事件处理器,发送信道作为一个资源由多个线程竞争获得。当某个事件处理器需要发送事件时,会将事件放入发送信道的待发送事件中。当发送信道到达发送周期时,从待发送事件中获取事件进行发送,如图1所示。当待发送事件的存储空间较大时,如果某台设备需要在短时间内上报大量事件,就会占用很多存储空间,以至于其它事件处理器需要发送的事件需要等待很久才能发送,造成信道堵塞以及其它设备发送事件的延迟。当待发送事件的存储空间较小时,信道经常会被填满事件。当待发送事件的存储空间被填满后,所有的事件处理器就不能继续工作,必须等待发送信道发送事件并清理出存储空间后,才能继续处理事件。这种频繁的工作状态切换会导致系统整体性能的下降。同时,在这种系统中,也无法保证在某个单位事件内,各个事件源具有相同的事件发送速率来上报事件。甚至更进一步,也无法添加某种优先级策略,来保证某个事件源的事件可以得到优先处理。
[0007] 为了使相对重要的事件得以快速上报,或者使延迟较高的设备可以较快上报事件,一种常见的解决方法是对每个事件处理器进行控制,并指定事件处理器访问发送信道的优先级,优先级高的信息会优先占用信道来进行汇报,流程图如图2所示。当事件处理器获取信道时,高优先级的事件处理器将优先获取到信道的权限,并将自己需要发送的事件加入待发送事件缓存中。然而这种方式也存在其不足之处,如果高优先级的设备需要发送大量事件,低优先级的设备会被长时间阻塞。低优先级的设备可以接受较高的延迟,但不应被阻塞。
[0008] 由于这些原因,现有技术中存在对于一种系统和方法的需求,该系统和方法在高并发环境下,可以对各事件处理器中需要发送的事件进行控制,使得在单位时间内,相同优先级的事件处理器可以发送的事件数量是相等的,以此保证每个事件处理器上报事件的延迟时间都是相对较小的。
[0009] 另外,现有技术中存在对于一种系统和方法的需求,该系统和方法在发送信道发送事件的过程中,各个事件处理器仍然可以继续处理事件并使其成为待发送事件,以提高系统的整体性能。
[0010] 同时,为了适应不同设备优先级不同的情况,需要有一种系统和方法,该系统和方法可以为高优先级的设备提供更高的发送速率。
[0011] 最后,待发送的事件数量变化时,需要有一种系统和方法,可以实时调整各个设备的优先级,以保证每台设备上报事件的延迟都尽量接近。
[0012] 经检索,申请号为200910134837.4的中国专利,该发明公开了一种动态优先级外部事务处理系统,一种多模式事务处理队列可以按照缺省优先级方案操作。当检测到拥挤事件时,事务处理队列可以采用第二优先级方案。在此发明中,如果高优先级的设备需要发送大量事件,低优先级的设备会被长时间阻塞;而本发明中,低优先级的设备依然被允许以较低速度发送事件。

当前第1页 第1页 第2页 第3页
相关技术
动态权重相关技术
处理系统相关技术
黄衍宁发明人的其他相关专利技术