CN109783202A - 事件处理方法、系统、设备和存储介质 - Google Patents

事件处理方法、系统、设备和存储介质 Download PDF

Info

Publication number
CN109783202A
CN109783202A CN201711130939.XA CN201711130939A CN109783202A CN 109783202 A CN109783202 A CN 109783202A CN 201711130939 A CN201711130939 A CN 201711130939A CN 109783202 A CN109783202 A CN 109783202A
Authority
CN
China
Prior art keywords
event
mode
handling
processed
poll
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.)
Pending
Application number
CN201711130939.XA
Other languages
English (en)
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.)
Alibaba Group Holding Ltd
Original Assignee
Alibaba Group Holding 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 Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Priority to CN201711130939.XA priority Critical patent/CN109783202A/zh
Publication of CN109783202A publication Critical patent/CN109783202A/zh
Pending legal-status Critical Current

Links

Landscapes

  • Computer And Data Communications (AREA)

Abstract

本发明公开了一种事件处理方法、系统、设备和存储介质。该方法包括:设置处理模式为事件驱动方式;按照事件驱动方式处理接收到的待处理事件;确定待处理事件是否为高优先级事件,待处理事件为高优先级事件时,将事件处理模式设置为轮询方式;当事件处理模式为轮询方式时,按照轮询方式执行轮询,并处理轮询结果中包含的新的高优先级事件。根据本发明实施例提供的事件处理方法,可以提高事件处理效率,优化系统性能。

Description

事件处理方法、系统、设备和存储介质
技术领域
本发明涉及计算机领域,尤其涉及事件处理方法、系统、设备和存储介质。
背景技术
随着互联网、物联网的普及和发展,应用系统的规模和数据量处理量日渐增大,在云计算服务和网络交互平台等大规模数据处理过程中,需要及时对事件消息进行响应和处理。
目前,大多数系统应用通常大多采用事件驱动的方式进行事件处理。简单地说,事件驱动的事件处理方式可以理解为:当有事件触发时,事件驱动机制被唤醒以选择事件并处理事件,而没有事件触发时,事件驱动机制可以进入睡眠状态,从而释放中央处理器(CPU,Central Processing Unit)的资源。
通常,事件驱动的方式下需要事件唤醒会产生额外的系统开销,当事件处理对系统性能要求较高时,事件驱动的方式往往会成为系统的瓶颈,导致事件处理效率低下。
发明内容
本发明实施例提供事件处理方法、系统、设备和存储介质,可以根据事件的优先级类型,自适应调整事件处理方式,使业务应用系统具有较高的性能,并提高了事件处理效率。
根据本发明实施例的一方面,提供一种事件处理方法,包括:
设置事件处理模式为事件驱动方式;
按照事件驱动方式处理接收到的待处理事件;
确定待处理事件是否为高优先级事件,当确定待处理事件为高优先级事件时,将事件处理模式设置为轮询方式;
当事件处理模式为轮询方式时,按照轮询方式执行轮询,并处理轮询结果中包含的高优先级事件。
根据本发明实施例的另一方面,提供一种事件处理方法,包括:
设置事件处理模式为事件驱动方式;
当满足第一条件时,将事件处理模式设置为轮询方式;
当满足第二条件时,将事件处理模式设置为事件驱动方式。
根据本发明实施例的再一方面,提供一种事件处理系统,包括:
事件驱动方式设置组件,用于设置事件处理模式为事件驱动方式;
事件驱动方式执行组件,用于按照事件驱动方式处理接收到的待处理事件;
轮询方式执行组件,用于确定待处理事件是否为高优先级事件,当确定待处理事件为高优先级事件时,将事件处理模式设置为轮询方式;
轮询方式执行组件,用于当事件处理模式为轮询方式时,按照轮询方式执行轮询,并处理轮询结果中包含的新的高优先级事件。
根据本发明实施例的还一方面,提供一种事件处理系统,包括:
事件驱动方式设置组件,用于设置事件处理模式为事件驱动方式;
轮询方式设置组件,用于当满足第一条件时,将事件处理模式设置为轮询方式;
该事件驱动方式设置组件还用于:当满足第二条件时,将事件处理模式设置为事件驱动方式。
根据本发明实施例的又一方面,提供一种事件处理设备,包括:存储器和处理器;该存储器用于存储程序;该处理器用于读取存储器中存储的可执行程序代码以执行上述的事件处理方法。
根据本发明实施例的再另一方面,提供了一种计算机可读存储介质,该计算机可读存储介质中存储有指令,当指令在计算机上运行时,使得计算机执行上述各方面所述的事件处理方法。
根据本发明实施例中的事件处理方法、系统、设备和存储介质,可以结合事件驱动和轮询两种处理方式,根据事件的优先级类型调整处理策略,从而使应用事件处理的业务系统拥有较高的性能,并且在降低系统开销的同时可以兼顾事件处理的公平性,提高了事件处理效率。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例中所需要使用的附图作简单地介绍,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是示出根据本发明示例性实施例的事件处理系统的架构示意图;
图2是示出本发明一实施例提供的事件处理方法的流程图;
图3是示出根据本发明一实施例的事件处理系统的结构示意图;
图4是示出本发明另一实施例提供的事件处理方法的流程图;
图5是示出根据本发明另一实施例的事件处理系统的结构示意图;
图6是示出能够实现根据本发明实施例的事件处理方法的计算设备的示例性硬件架构的结构图。
具体实施方式
下面将详细描述本发明的各个方面的特征和示例性实施例,为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细描述。应理解,此处所描述的具体实施例仅被配置为解释本发明,并不被配置为限定本发明。对于本领域技术人员来说,本发明可以在不需要这些具体细节中的一些细节的情况下实施。下面对实施例的描述仅仅是为了通过示出本发明的示例来提供对本发明更好的理解。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
为了更好的理解本发明,下面将结合附图,详细描述根据本发明实施例的事件处理方法、系统、设备和存储介质,应注意,这些实施例并不是用来限制本发明公开的范围。
在本发明实施例中,事件是指操作系统或应用软件系统中任意一个活动的发生,事件处理是指调用有关程序或例程,对操作系统或应用软件系统中所发生的任意一个活动进行处理。
在本发明实施例中,事件驱动方式也可以称作消息通知方式,是一种被动响应并处理事件的方式。简单来说,就是如果没有事件发生,应用程序将处于等待状态,不会执行事件处理,一旦事件发生,将根据不同的事件做出相应的处理。
作为事件驱动处理方式的一个示例,利用网络库(Sockets Library),例如开源的面向对象的程序设计语言C/C++网络库(C/C++ Sockets Library),开发的基于网络的大规模应用系统中,网络库对数据包的处理大多是可以采用事件驱动的事件处理模式。
通过大量的实践经验表明,采用事件驱动的方式可以节约系统资源。但是,事件响应延时较高,通常会有5~15μs的系统开销用于例如事件唤醒和消息通知,从而影响了系统的吞吐率。
在本发明实施例中,轮询是可以主动检查事件是否产生,并对事件进行处理的方式。
作为轮询方式的一个示例,CPU以一定的周期按次序查询每一个外设,看它是否有数据输入或输出的要求,若有,则进行相应的输入/输出服务;若无,或输入/输出处理完毕,CPU接着查询下一个外设。
在该示例中,轮询方式使CPU通过执行指令主动对外部设备进行查询,可以更及时地检查到事件并进行处理。
相比事件驱动的方式,轮询方式对事件响应延时较低。但是轮询方式具有很大的弊端在于:当系统空闲时,轮询过程会做许多主动的检查,不是每次检查都会有事件需要处理,这样会造成系统资源的浪费。
基于此,本发明实施例提供一种事件处理方法、系统、设备和存储介质,并可以广泛应用于云计算基础架构平台等业务应用系统中以进行事件处理。
图1是示出根据本发明实施例的事件处理系统的架构示意图。如图1所示,事件处理系统100可以包括:信号接收组件110、优先级确定组件120、事件驱动方式设置组件130、事件驱动方式执行组件140、轮询方式设置组件150和轮询方式执行组件160。
在一些实施例中,事件处理系统100可以和指定的数据存储组件耦合,数据存储组件可以用于存储要处理的数据包和数据处理结果。
作为一个示例,数据存储组件可以是指定的数据库或预设的存储空间。
在一个实施例中,事件处理系统刚启动时就有事件发生并需要处理的可能性较小,为了减少系统资源的浪费,可以在事件处理系统刚启动时,通过事件驱动方式设置组件130,设置事件处理模式为事件驱动方式。
在一个实施例中,在事件驱动方式的事件处理模式后,事件处理系统处于事件信号等待状态。
信号接收组件110,可以用于接收事件信号,通过事件信号触发或停止本发明实施例中的事件处理流程。
在一个示例中,如果事件信号为退出信号,则停止本发明实施例的事件处理系统对待处理事件的事件处理流程。
在另一个示例中,如果事件信号不是退出信号,则可以根据接收到的事件信号进行分析,确定待处理事件,通过事件驱动方式执行组件140处理该待处理事件。
优先级确定组件120,可以用于确定待处理事件的优先级数值。在本发明实施例中,由于优先级检查的不会对系统开销造成影响,因此,对于每次接收到的事件信号对应的每个待处理事件,可以对每个待处理事件的优先级进行检查。
在一个实施例中,可以通过事件处理业务逻辑,对待处理事件进行分析,以确定待处理事件的优先级数值。
在该实施例中,事件处理业务逻辑,可以理解为是事件处理流程中所需要执行的各种逻辑和规则,事件处理业务逻辑可以预先设置在事件处理系统中。
作为一个示例,一方面,事件处理业务逻辑可以用于指示事件处理过程中,为了实现具体的功能所需要执行的操作以及方法调用,另一方面,事件处理业务逻辑也可以用于为事件处理过程设定具体的参数、属性等配置项,使得根据该事件处理业务逻辑对事件进行处理时,可以与设定的配置项相匹配。
作为一个示例,远程直接数据存取(Remote Direct Memory Access,RDMA)是一种使一台计算机可以直接将数据通过网络传送到另一台计算机内存中的技术,该技术可以减少对系统带宽和处理器开销的需要,显著降低了时延。
当使用RDMA对数据包进行处理和使用TCP技术对数据包进行处理在系统应用中以混跑的形式在系统中运行,由于使用RDMA对数据包进行处理的业务逻辑中,RDMA对数据包进行处理时,对系统时延更为苛刻,需要优先处理,因此使用RDMA对数据包进行处理的优先级数值高于使用TCP技术对数据包进行处理时的优先级数值。
在另一个实施例中,待处理事件的优先级可以是动态变化的。也就是说,可以根据预设的规则,动态调整待处理事件的优先级。该预设的规则可以称为是优先级调整策略。
因此,在本发明实施例中,可以根据预设的事件处理业务逻辑和/或优先级调整策略,对待处理事件进行分析,得到待处理事件的优先级数值。
具体地,当确定的优先级数值小于优先级判定阈值时,确定待处理事件的优先级类型为非高优先级事件,例如低优先级事件;当确定的优先级数值大于等于优先级判定阈值时,确定待处理事件的优先级类型为高优先级事件。
事件驱动方式执行组件140,可以在待处理事件为非高优先级事件时,继续通过事件驱动方式处理接收到的待处理事件。
在一些实施例中,为了兼顾公平,可以按照非高优先级事件的优先级数值由高到低或事件触发时间由先到后,依序处理接收到的多个非高优先级事件。
轮询方式设置组件150,可以用于在待处理事件为高优先级事件时,将事件处理模式设置为轮询方式。
轮询方式执行组件160,当事件处理模式为轮询方式时,轮询处理高优先级事件。
在一个实施例中,轮询方式执行组件160具体可以用于:当事件处理模式为轮询方式,并且未达到预设的轮询限制条件时,轮询处理该高优先级事件。
在一个实施例中,预设的轮询限制条件可以是轮询总次数或轮询总时间。
作为一个示例,以轮询限制条件为轮询总次数为例,可以通过下面的步骤,对事件进行轮询处理:
步骤S01:检查轮询执行次数是否达到轮询总次数。
步骤S02:如果轮询执行次数未达到轮询总次数,则执行一次轮询,且轮询执行次数加1,如果轮询执行次数达到轮询总次数,则停止轮询。
步骤S03:检查轮询结果,如果有新的待处理事件发生,对轮询结果中包含的新的待处理事件进行处理,并开始下一次轮询,执行步骤S01,如果没有新的待处理事件发生,则可以直接执行步骤S01。
在上述步骤S02中,如果停止轮询,则可以通过事件驱动方式设置组件130,重新设置事件处理模式为事件驱动方式。
在一些示例中,按照轮询方式执行轮询时,不同的高优先级事件,设置的轮询总次数可以不相同。
在另一些示例中,按照轮询方式执行轮询时,不同的高优先级事件,设置的轮询总时间可以不相同。
在本发明实施例中,事件驱动方式设置组件130,还可以用于在事件处理系统中,当事件处理模式为轮询方式,并且达到预设的轮询限制条件时,将事件处理模式重新设置为事件驱动方式。
根据本发明实施例的事件处理系统100,在系统启动时,可以设置事件处理模式为事件驱动方式,采用事件驱动的方式,可以节约系统资源例如电量消耗,对低优先级事件进行公平的处理;对于高优先级的事件,可以采用轮询的方式,降低系统开销和相应延迟,保证了较高的服务质量。
在本发明实施例中,轮询方式本身并没有规定只能用来处理高优先级事件,但是,由于轮询时CPU一直被占用,即使轮询结果中不包含待处理的事件,事件处理系统也不能执行其他任务,造成CPU资源浪费,CPU利用率降低。
因此,在本发明实施例中,可以对轮询方式设置限制条件,根据轮询限时条件,使用轮询方式对高优先级事件进行处理,当达到轮询限制条件时,将事件处理模式重新设置为事件驱动方式,使低优先级事件可以及时得到处理,减少CPU做无用功,节约系统资源。
图2是示出根据本发明一实施例的事件处理方法的流程图。如图2所示,本发明实施例中的事件处理方法200包括以下步骤:
步骤S210,设置事件处理模式为事件驱动方式。
步骤S220,按照事件驱动方式处理接收到的待处理事件。
步骤S230,确定待处理事件是否为高优先级事件,当确定待处理事件为高优先级事件时,将事件处理模式设置为轮询方式。
在该步骤中,当确定待处理时间为非高优先级事件时,可以继续按照事件驱动方式处理接收到的待处理事件。
步骤S240,当事件处理模式为轮询方式时,按照轮询方式执行轮询,并处理轮询结果中包含的新的高优先级事件。
在一个实施例中,当事件处理模式为轮询方式,并且未达到预设的轮询执行限制条件时,按照轮询方式执行轮询。
在另一个实施例中,当事件处理模式为轮询方式,按照轮询方式执行轮询,在达到轮询执行限制条件时,可以重新设置事件处理模式为事件驱动方式。
在一些实施例中,步骤S230中确定待处理事件是否为高优先级事件的步骤具体可以包括:
步骤S231,接收事件信号,根据事件信号确定待处理事件。
步骤S232,根据预设的事件处理业务逻辑和/或优先级调整策略,对待处理事件进行分析,得到待处理事件的优先级数值。
步骤S233,优先级数值大于等于优先级判定阈值时,确定待处理事件的优先级类型为高优先级事件,优先级数值小于优先级判定阈值时,确定待处理事件的优先级类型为非高优先级事件。
在一些实施例中,可以根据预设的事件处理业务逻辑和/或用户自定义的优先级调整策略或根据实际情况调整待处理事件的优先级数值。
作为一个示例,按照轮询方式执行轮询时,不同的高优先级事件,轮询总次数或轮询总时间可以不同。
步骤S250,当事件处理模式为轮询方式,在达到轮询执行限制条件时,重新设置事件处理模式为事件驱动方式。
在一些实施例中,轮询限制条件可以包括轮询总次数或轮询总时间。
在一些实施例中,多个待处理事件均为高优先级事件时,每个高优先级事件的轮询总次数或轮询总时间可以不相同。
作为一个示例,即使多个待处理事件的优先级数值相同,每个待处理事件也可以具有不同的轮询次数或轮询总时间。
根据本发明实施例的事件处理方法,可以根据事件的优先级高低,采用自适应的策略,选择轮询方式或事件驱动方式的事件处理模式。使应用该事件处理方法的系统或交互平台相比事件处理模式为事件驱动方式,拥有较高性能,相比事件处理模式为轮询方式,减少了资源浪费,保证事件处理的公平性。
图3是示出了根据本发明一实施例的事件处理系统的结构示意图。如图3所示,事件处理系统300包括:
事件驱动方式设置组件310,用于设置事件处理模式为事件驱动方式。
事件驱动方式执行组件320,用于按照事件驱动方式处理接收到的待处理事件。
轮询方式设置组件330,用于确定待处理事件是否为高优先级事件,当确定待处理事件为高优先级事件时,将事件处理模式切换为轮询方式。
轮询方式执行组件340,用于当事件处理模式为轮询方式时,按照轮询方式执行轮询,并处理轮询结果中包含的新的待处理事件。
在一些实施例中,轮询方式执行组件340具体用于:当事件处理模式为轮询方式,并且未达到轮询执行限制条件时,按照轮询方式执行轮询,并处理轮询结果中包含的新的待处理事件。
在一些实施例中,事件驱动方式执行组件320还用于:当确定待处理事件为非高优先级事件时,继续按照事件驱动方式处理接收到的待处理事件。
在一些实施例中,事件驱动方式设置组件310还用于:在达到轮询执行限制条件时,重新设置事件处理模式为事件驱动方式。
在一些实施例中,轮询执行限制条件的类型包括轮询总次数或轮询总时间。
在本发明实施例中,事件驱动方式设置组件310和轮询方式设置组件330可以根据事件是否是高优先级事件,自适应调整事件处理模式。
在一些实施例中,事件处理系统300还可以包括:
信号接收组件350,用于接收事件信号,根据事件信号确定待处理事件。
在一些实施例中,如果事件信号为停止信号,则结束事件处理流程。
优先级数值确定组件360,用于根据预设的事件处理业务逻辑或事件处理策略,对待处理事件进行分析,得到待处理事件的优先级数值。
在一些实施例中,可以根据用户自定义的策略或实际情况调整待处理事件的优先级数值。也就是说,相同的待处理事件可以根据用户自定义而具有不同的优先级数值。
在一些实施例中,按照轮询方式执行轮询时,不同的高优先级事件,轮询总次数或轮询总时间可以不相同。
非高优先级事件确定组件370,用于优先级数值小于优先级判定阈值时,确定待处理事件为非高优先级事件。
高优先级事件确定组件380,用于优先级数值大于等于优先级判定阈值时,确定待处理事件为高优先级事件。
根据本发明实施例的事件处理系统,初始化为事件驱动的事件处理模式,对于高优先级事件,设置事件处理模式为轮询方式,并且满足轮询执行限制条件后,将轮询方式切换回事件驱动方式,继续处理低优先级事件。本发明实施例的事件处理系统,可以结合了事件驱动和轮询两种事件处理方式,可以在减少资源浪费的同时,具有较高的系统性能,并可以保证事件处理的公平性。
图4示出了根据本发明另一实施例的事件处理方法的流程图。如图4所示,本发明实施例中的事件处理方法400包括以下步骤:
步骤S410,设置事件处理模式为事件驱动方式。
步骤S420,当满足第一条件时,将事件处理模式设置为轮询方式。
在一个实施例中,步骤S420具体可以包括:
确定待处理事件是否为高优先级事件,当确定待处理事件为高优先级事件时,将事件处理模式设置为轮询方式。
在该步骤中,当确定待处理事件为非高优先级事件时,按照事件驱动方式处理接收到的待处理事件。
在一个实施例中,确定待处理事件是否为高优先级事件的步骤具体可以包括:
接收事件信号,根据事件信号确定待处理事件;
根据预设的事件处理业务逻辑或事件处理策略,对待处理事件进行分析,得到待处理事件的优先级数值;
优先级数值大于等于优先级判定阈值时,确定待处理事件的优先级类型为高优先级事件;
优先级数值小于优先级判定阈值时,确定待处理事件的优先级类型为非高优先级事件。
步骤S430,当满足第二条件时,将事件处理模式设置为事件驱动方式。
在该步骤中,当事件处理模式为轮询方式时,按照轮询方式执行轮询,并处理轮询结果中包含的新的待处理事件。
在一个实施例中,当事件处理模式为轮询方式,并且未达到预设的轮询执行限制条件时,按照轮询方式执行轮询,并处理轮询结果中包含的新的待处理事件。
在一个实施例中,当事件处理模式为轮询方式,并且达到预设的轮询执行限制条件时,将事件处理模式设置为事件驱动方式。
在一个实施例中,轮询执行限制条件包括轮询总次数或轮询总时间。
在一个实施例中,事件处理模式为轮询方式时,不同的高优先级事件,轮询总次数或轮询总时间不相同。
根据本发明实施例的事件处理方法,可以根据事件的优先级高低,采用自适应的策略,选择轮询方式或事件驱动方式的事件处理模式。使应用该事件处理方法的系统或交互平台等既拥有高性能,又可以减少资源浪费,保证事件处理的公平性。
图5是示出了根据本发明另一实施例的事件处理系统的结构示意图。如图5所示,事件处理系统500包括:
事件驱动方式设置组件510,用于设置事件处理模式为事件驱动方式。
轮询方式设置组件520,用于当满足第一条件时,将事件处理模式设置为轮询方式。
事件驱动方式设置组件510还用于:当满足第二条件时,将事件处理模式设置为事件驱动方式。
在一个实施例中,轮询方式设置组件520具体用于:
确定待处理事件是否为高优先级事件,当确定待处理事件为高优先级事件时,将事件处理模式设置为轮询方式。
在一个实施例中,事件处理系统还可以包括:
信号接收组件,用于接收事件信号,根据事件信号确定待处理事件。
优先级数值确定组件,用于根据预设的事件处理业务逻辑或事件处理策略,对待处理事件进行分析,得到待处理事件的优先级数值。
高优先级事件确定组件,用于优先级数值大于等于优先级判定阈值时,确定待处理事件的优先级类型为高优先级事件。
非高优先级事件确定组件,用于优先级数值小于优先级判定阈值时,确定待处理事件的优先级类型为非高优先级事件。
在一个实施例中,事件处理系统500还可以包括:
轮询方式执行组件,用于当事件处理模式为轮询方式时,按照轮询方式执行轮询,并处理轮询结果中包含的新的待处理事件。
在一个实施例中,轮询方式执行组件具体可以用于:当事件处理模式为轮询方式,并且未达到预设的轮询执行限制条件时,按照轮询方式执行轮询,并处理轮询结果中包含的新的待处理事件。
在一个实施例中,事件处理系统500还可以包括:
事件驱动方式执行组件,用于当确定待处理事件为非高优先级事件时,继续按照事件驱动方式处理接收到的待处理事件。
在一个实施例中,事件驱动方式设置组件具体用于:
当事件处理模式为轮询方式,并且达到预设的轮询执行限制条件时,将事件处理模式设置为事件驱动方式。
在一个实施例中,轮询执行限制条件包括轮询总次数或轮询总时间。
在一个实施例中,事件处理模式为轮询方式时,不同的高优先级事件,轮询总次数或轮询总时间不相同。
根据本发明实施例的事件处理系统,可以结合了事件驱动和轮询两种事件处理方式,可以在减少资源浪费的同时,具有较高的系统性能,并可以保证事件处理的公平性。
图6示出了能够实现根据本发明实施例的事件处理方法的计算设备的示例性硬件架构的结构图。
如图6所示,计算设备600包括输入设备601、输入接口602、中央处理器603、存储器604、输出接口605、以及输出设备606。其中,输入接口602、中央处理器603、存储器604、以及输出接口605通过总线610相互连接,输入设备601和输出设备606分别通过输入接口602和输出接口605与总线610连接,进而与计算设备600的其他组件连接。
具体地,输入设备601接收来自外部的输入信息,并通过输入接口602将输入信息传送到中央处理器603;中央处理器603基于存储器604中存储的计算机可执行指令对输入信息进行处理以生成输出信息,将输出信息临时或者永久地存储在存储器604中,然后通过输出接口605将输出信息传送到输出设备606;输出设备606将输出信息输出到计算设备600的外部供用户使用。
也就是说,图6所示的计算设备也可以被实现为一种事件处理设备,该事件处理设备可以包括:存储有计算机可执行指令的存储器;以及处理器,该处理器在执行计算机可执行指令时可以实现上述实施例中描述的事件处理方法。
本发明实施例还提供一种计算机可读存储介质,该计算机存储介质上存储有计算机程序指令;该计算机程序指令被处理器执行时实现本发明上述实施例提供的事件处理方法。
根据本发明实施例提供的事件处理方法、设备、处理器和存储介质,可以根据事件的优先级类型,自适应调整事件处理方式,使业务应用系统具有较高的性能,并提高了事件处理效率。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品或计算机可读存储介质的形式实现。所述计算机程序产品或计算机可读存储介质包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。
需要明确的是,本发明并不局限于上文所描述并在图中示出的特定配置和处理。为了简明起见,这里省略了对已知方法的详细描述。在上述实施例中,描述和示出了若干具体的步骤作为示例。但是,本发明的方法过程并不限于所描述和示出的具体步骤,本领域的技术人员可以在领会本发明的精神后,作出各种改变、修改和添加,或者改变步骤之间的顺序。
以上所述,仅为本发明的具体实施方式,所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的系统、模块和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。应理解,本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。

Claims (34)

1.一种事件处理方法,包括:
设置事件处理模式为事件驱动方式;
按照所述事件驱动方式处理接收到的待处理事件;
确定所述待处理事件是否为高优先级事件,当确定所述待处理事件为高优先级事件时,将所述事件处理模式设置为轮询方式;
当所述事件处理模式为轮询方式时,按照所述轮询方式执行轮询,并处理轮询结果中包含的新的待处理事件。
2.根据权利要求1所述的事件处理方法,还包括:
当确定所述待处理时间为非高优先级事件时,继续按照所述事件驱动方式处理接收到的待处理事件。
3.根据权利要求1所述的事件处理方法,所述当所述事件处理模式为轮询方式时,按照所述轮询方式执行轮询,包括:
当所述事件处理模式为轮询方式,且未达到预设的轮询执行限制条件时,按照所述轮询方式执行轮询。
4.根据权利要求1所述的事件处理方法,还包括:
当所述事件处理模式为所述轮询方式,在达到预设的轮询执行限制条件时,重新设置所述事件处理模式为事件驱动方式。
5.根据权利要求1所述的事件处理方法,所述确定所述待处理事件是否为高优先级事件,包括:
接收事件信号,根据所述事件信号确定待处理事件;
根据预设的事件处理业务逻辑和/或优先级调整策略,对所述待处理事件进行分析,得到所述待处理事件的优先级数值;
所述优先级数值大于等于所述优先级判定阈值时,确定所述待处理事件的优先级类型为高优先级事件;
所述优先级数值小于优先级判定阈值时,确定所述待处理事件的优先级类型为非高优先级事件。
6.根据权利要求1或4所述的事件处理方法,其中,
所述轮询执行限制条件包括轮询总次数或轮询总时间。
7.根据权利要求6所述的事件处理方法,其中,
按照所述轮询方式执行轮询时,不同的高优先级事件,所述轮询总次数或所述轮询总时间不相同。
8.一种事件处理方法,包括:
设置事件处理模式为事件驱动方式;
当满足第一条件时,将所述事件处理模式设置为轮询方式;
当满足第二条件时,将所述事件处理模式设置为所述事件驱动方式。
9.根据权利要求8所述的事件处理方法,其中,所述当满足第一条件时,将所述事件处理模式设置为轮询方式,包括:
确定所述待处理事件是否为高优先级事件;
当确定所述待处理事件为高优先级事件时,将所述事件处理模式设置为轮询方式。
10.根据权利要求9所述的事件处理方法,所述确定所述待处理事件是否为高优先级事件,包括:
接收事件信号,根据所述事件信号确定待处理事件;
根据预设的事件处理业务逻辑或事件处理策略,对所述待处理事件进行分析,得到所述待处理事件的优先级数值;
所述优先级数值大于等于所述优先级判定阈值时,确定所述待处理事件的优先级类型为高优先级事件;
所述优先级数值小于优先级判定阈值时,确定所述待处理事件的优先级类型为非高优先级事件。
11.根据权利要求9所述的事件处理方法,还包括:
当所述事件处理模式为轮询方式时,按照所述轮询方式执行轮询;
处理轮询结果中包含的新的待处理事件。
12.根据权利要求11所述的事件处理方法,所述当所述事件处理模式为轮询方式时,按照所述轮询方式执行轮询,包括:
当所述事件处理模式为轮询方式,且未达到预设的轮询执行限制条件时,按照所述轮询方式执行轮询。
13.根据权利要求9所述的事件处理方法,其中,所述事件处理方法还包括:
当确定所述待处理事件为非高优先级事件时,按照所述事件驱动方式处理接收到的待处理事件。
14.根据权利要求8所述的事件处理方法,所述当满足第二条件时,将所述事件处理模式设置为所述事件驱动方式,包括:
当事件处理模式为轮询方式,并且达到预设的轮询执行限制条件时,将所述事件处理模式设置为所述事件驱动方式。
15.根据权利要求11或14所述的事件处理方法,其中,
所述轮询执行限制条件包括轮询总次数或轮询总时间。
16.根据权利要求8所述的事件处理方法,其中,
所述事件处理模式为轮询方式时,不同的高优先级事件,所述轮询总次数或轮询总时间不相同。
17.一种事件处理系统,包括:
事件驱动方式设置组件,用于设置事件处理模式为事件驱动方式;
事件驱动方式执行组件,用于按照所述事件驱动方式处理接收到的待处理事件;
轮询方式设置组件,用于确定所述待处理事件是否为高优先级事件,当确定所述待处理事件为高优先级事件时,将所述事件处理模式设置为轮询方式;
轮询方式执行组件,用于当所述事件处理模式为轮询方式时,按照所述轮询方式执行轮询,并处理所述轮询结果中包含的新的待处理事件。
18.根据权利要求17所述的事件处理系统,所述事件驱动方式执行组件还用于:
当确定所述待处理时间为非高优先级事件时,继续按照所述事件驱动方式处理接收到的待处理事件。
19.根据权利要求17所述的事件处理系统,所述轮询方式执行组件具体用于:
当所述事件处理模式为轮询方式,并且未达到预设的轮询执行限制条件时,按照所述轮询方式执行轮询,并处理所述轮询结果中包含的新的待处理事件。
20.根据权利要求17所述的事件处理系统,所述事件驱动方式设置组件还用于:
当所述事件处理模式为所述轮询方式,在达到预设的轮询执行限制条件时,重新设置所述事件处理模式为事件驱动方式。
21.根据权利要求17所述的事件处理系统,所述事件处理系统还包括:
信号接收组件,用于接收事件信号,根据所述事件信号确定待处理事件;
优先级数值确定组件,用于根据预设的事件处理业务逻辑或事件处理策略,对所述待处理事件进行分析,得到所述待处理事件的优先级数值;
高优先级事件确定组件,用于所述优先级数值大于等于所述优先级判定阈值时,确定所述待处理事件为高优先级事件;
非高优先级事件确定组件,用于所述优先级数值小于优先级判定阈值时,确定所述待处理事件为非高优先级事件。
22.根据权利要求17或20所述的事件处理系统,其中,
所述轮询执行限制条件包括轮询总次数或轮询总时间。
23.根据权利要求22所述的事件处理系统,其中,
按照所述轮询方式执行轮询时,不同的高优先级事件,所述轮询总次数或所述轮询总时间不相同。
24.一种事件处理系统,包括:
事件驱动方式设置组件,用于设置事件处理模式为事件驱动方式;
轮询方式设置组件,用于当满足第一条件时,将所述事件处理模式设置为轮询方式;
所述事件驱动方式设置组件还用于:当满足第二条件时,将所述事件处理模式设置为所述事件驱动方式。
25.根据权利要求24所述的事件处理系统,所述轮询方式设置组件具体用于:
确定所述待处理事件是否为高优先级事件,当确定所述待处理事件为高优先级事件时,将所述事件处理模式设置为轮询方式。
26.根据权利要求25所述的事件处理系统,其中,所述事件处理系统还包括:
信号接收组件,用于接收事件信号,根据所述事件信号确定待处理事件;
优先级数值确定组件,用于根据预设的事件处理业务逻辑或事件处理策略,对所述待处理事件进行分析,得到所述待处理事件的优先级数值;
高优先级事件确定组件,用于所述优先级数值大于等于所述优先级判定阈值时,确定所述待处理事件的优先级类型为高优先级事件;
非高优先级事件确定组件,用于所述优先级数值小于优先级判定阈值时,确定所述待处理事件的优先级类型为非高优先级事件。
27.根据权利要求25所述的事件处理系统,还包括:
轮询方式执行组件,用于当所述事件处理模式为轮询方式时,按照所述轮询方式执行轮询,并处理轮询结果中包含的新的待处理事件。
28.根据权利要求27所述的事件处理系统,其中,所述轮询方式执行组件具体用于:
当所述事件处理模式为轮询方式,并且未达到预设的轮询执行限制条件时,按照所述轮询方式执行轮询,并处理轮询结果中包含的新的待处理事件。
29.根据权利要求25所述的事件处理系统,其中,所述事件处理系统还包括:
事件驱动方式执行组件,用于当确定所述待处理事件为非高优先级事件时,继续按照所述事件驱动方式处理接收到的待处理事件。
30.根据权利要求24所述的事件处理系统,所述事件驱动方式设置组件具体用于:
当事件处理模式为轮询方式,并且达到预设的轮询执行限制条件时,将所述事件处理模式设置为所述事件驱动方式。
31.根据权利要求27或30所述的事件处理系统,其中,
所述轮询执行限制条件包括轮询总次数或轮询总时间。
32.根据权利要求24所述的事件处理系统,其中,
所述事件处理模式为轮询方式时,不同的高优先级事件,所述轮询总次数或轮询总时间不相同。
33.一种事件处理设备,其特征在于,包括存储器和处理器;
所述存储器用于储存有可执行程序代码;
所述处理器用于读取所述存储器中存储的可执行程序代码以执行权利要求1至16任一项所述的事件处理方法。
34.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质包括指令,当所述指令在计算机上运行时,使得计算机执行如权利要求1-16任意一项所述的事件处理方法。
CN201711130939.XA 2017-11-15 2017-11-15 事件处理方法、系统、设备和存储介质 Pending CN109783202A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201711130939.XA CN109783202A (zh) 2017-11-15 2017-11-15 事件处理方法、系统、设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201711130939.XA CN109783202A (zh) 2017-11-15 2017-11-15 事件处理方法、系统、设备和存储介质

Publications (1)

Publication Number Publication Date
CN109783202A true CN109783202A (zh) 2019-05-21

Family

ID=66495160

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201711130939.XA Pending CN109783202A (zh) 2017-11-15 2017-11-15 事件处理方法、系统、设备和存储介质

Country Status (1)

Country Link
CN (1) CN109783202A (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114051716A (zh) * 2019-08-06 2022-02-15 西门子股份公司 配置优先级的方法、云平台、系统、计算设备和介质
CN115378810A (zh) * 2022-08-22 2022-11-22 深圳奇迹智慧网络有限公司 一种规则动态更新方法、装置、计算机设备和存储介质
CN115577935A (zh) * 2022-10-09 2023-01-06 华院计算技术(上海)股份有限公司 基于认知智能的连铸数据处理方法及装置、计算设备
CN114051716B (zh) * 2019-08-06 2024-06-11 西门子股份公司 配置优先级的方法、云平台、系统、计算设备和介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1955931A (zh) * 2005-09-30 2007-05-02 科威尔公司 在多核架构中进行调度
CN102541651A (zh) * 2011-12-12 2012-07-04 华中科技大学 一种嵌入式虚拟机的实时调度系统
CN103136045A (zh) * 2011-11-24 2013-06-05 中兴通讯股份有限公司 虚拟化操作系统中的调度方法和装置
US20130219397A1 (en) * 2010-08-30 2013-08-22 David C. Adams Methods and Apparatus for State Objects in Cluster Computing
US20140237279A1 (en) * 2011-09-30 2014-08-21 Rajeev Muralidhar Priority based application event control (paec) to reduce power consumption

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1955931A (zh) * 2005-09-30 2007-05-02 科威尔公司 在多核架构中进行调度
US20130219397A1 (en) * 2010-08-30 2013-08-22 David C. Adams Methods and Apparatus for State Objects in Cluster Computing
US20140237279A1 (en) * 2011-09-30 2014-08-21 Rajeev Muralidhar Priority based application event control (paec) to reduce power consumption
CN103136045A (zh) * 2011-11-24 2013-06-05 中兴通讯股份有限公司 虚拟化操作系统中的调度方法和装置
CN102541651A (zh) * 2011-12-12 2012-07-04 华中科技大学 一种嵌入式虚拟机的实时调度系统

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114051716A (zh) * 2019-08-06 2022-02-15 西门子股份公司 配置优先级的方法、云平台、系统、计算设备和介质
CN114051716B (zh) * 2019-08-06 2024-06-11 西门子股份公司 配置优先级的方法、云平台、系统、计算设备和介质
CN115378810A (zh) * 2022-08-22 2022-11-22 深圳奇迹智慧网络有限公司 一种规则动态更新方法、装置、计算机设备和存储介质
CN115577935A (zh) * 2022-10-09 2023-01-06 华院计算技术(上海)股份有限公司 基于认知智能的连铸数据处理方法及装置、计算设备
CN115577935B (zh) * 2022-10-09 2023-09-15 华院计算技术(上海)股份有限公司 基于认知智能的连铸数据处理方法及装置、计算设备

Similar Documents

Publication Publication Date Title
US10972344B2 (en) Automated adjustment of subscriber policies
US10320623B2 (en) Techniques for tracking resource usage statistics per transaction across multiple layers of protocols
US10169060B1 (en) Optimization of packet processing by delaying a processor from entering an idle state
US10613909B2 (en) Method and apparatus for generating an optimized streaming graph using an adjacency operator combination on at least one streaming subgraph
US11036547B2 (en) File operation task optimization
CN106603598B (zh) 处理业务请求的方法及装置
US8387059B2 (en) Black-box performance control for high-volume throughput-centric systems
US9720739B2 (en) Method and system for dedicating processors for desired tasks
US7587718B1 (en) Method and apparatus for enforcing a resource-usage policy in a compute farm
CN109478147B (zh) 分布式计算系统中的自适应资源管理
US20180097844A1 (en) Selective enforcement of event record purging in a high volume log system
US20210185740A1 (en) Enabling communications between a controlling device and a network-controlled device via a network-connected device service over a mobile communications network
CN110806928A (zh) 一种作业提交方法及系统
CN114461355A (zh) 异构计算集群统一管理方法、装置、电子设备及存储介质
CN113132456A (zh) 一种基于截止时间感知的边云协同任务调度方法及系统
CN109783202A (zh) 事件处理方法、系统、设备和存储介质
CN109271259B (zh) 企业服务总线系统、数据处理方法、终端及存储介质
US20180004499A1 (en) Method and system for provisioning application on physical machines using operating system containers
US20050089063A1 (en) Computer system and control method thereof
US9298652B2 (en) Moderated completion signaling
US9021109B1 (en) Controlling requests through message headers
CN113971082A (zh) 任务调度方法、装置、设备、介质及产品
WO2023093200A1 (zh) 任务异步处理方法、装置、存储介质及电子装置
US10771433B2 (en) Automatic management of firewall rules and policies in accordance with relevancy to network traffic of a wireless network
US20220091888A1 (en) Resource utilization method, electronic device, and computer program product

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
RJ01 Rejection of invention patent application after publication

Application publication date: 20190521

RJ01 Rejection of invention patent application after publication