一种业务事件的处理方法、装置、系统及存储介质制造方法及图纸

技术编号:30054446 阅读:17 留言:0更新日期:2021-09-15 10:58
本申请实施例公开了一种业务事件的处理方法、装置、系统及存储介质。其中,该方法包括:通过当前队列控制器根据当前事件队列的使用率和当前事件队列对业务事件的存储速率,确定当前事件队列是否能够接收新的业务事件;若能够,则将新的业务事件存储到当前事件队列中;通过当前线程池控制器对当前事件处理线程进行调整,并根据该调整结果为当前事件队列中的业务事件分配当前事件处理线程;通过所分配的当前事件处理线程对业务事件进行处理,得到业务请求结果。本申请实施例提供的技术方案,能够实现对系统资源的合理分配,从而使得系统资源使用达到最优化。源使用达到最优化。源使用达到最优化。

【技术实现步骤摘要】
一种业务事件的处理方法、装置、系统及存储介质


[0001]本申请实施例涉及计算机
,尤其涉及一种业务事件的处理方法、装置、系统及存储介质。

技术介绍

[0002]多阶段事件驱动架构模型(Staged Event Driven Architecture,简称SEDA)的核心思想为将应用程序的业务事件从逻辑上划分为一系列相互关联的阶段,每个阶段是一个独立的执行模块,具有独立的逻辑处理能力。多个阶段之间由事件队列相连接进行通信。
[0003]但是,传统的SEDA架构主要在资源控制机制方面存在一些缺点,如:在业务事件高并发场景下,阶段内以及各阶段之间的动态资源的缺乏协调机制,且协调动态资源的各种资源控制器参数的设置比较主观。因此,亟需设计一种业务事件的处理方法,用于解决SEDA架构在高并发场景下的资源管理及优化问题。

技术实现思路

[0004]本申请实施例提供了一种业务事件的处理方法、装置、系统及存储介质,能够实现对系统资源的合理分配,从而使得系统资源使用达到最优化。
[0005]第一方面,本申请实施例提供了一种业务事件的处理方法,该方法包括:
[0006]通过当前队列控制器根据当前事件队列的使用率和所述当前事件队列对业务事件的存储速率,确定所述当前事件队列是否能够接收新的业务事件;
[0007]若能够,则将所述新的业务事件存储到所述当前事件队列中;
[0008]通过所述当前线程池控制器对当前事件处理线程进行调整,并根据该调整结果为所述当前事件队列中的业务事件分配当前事件处理线程;
[0009]通过所分配的当前事件处理线程对业务事件进行处理,得到业务请求结果;其中,所述当前队列控制器、所述当前事件队列、所述当前线程池控制器和所述当前事件处理线程均属于当前业务处理模块。
[0010]第二方面,本申请实施例提供了一种业务事件的处理装置,该装置包括:
[0011]确定模块,用于通过当前队列控制器根据当前事件队列的使用率和所述当前事件队列对业务事件的存储速率,确定所述当前事件队列是否能够接收新的业务事件;
[0012]存储模块,用于若能够,则将所述新的业务事件存储到所述当前事件队列中;
[0013]分配模块,用于通过所述当前线程池控制器对当前事件处理线程进行调整,并根据该调整结果为所述当前事件队列中的业务事件分配当前事件处理线程;
[0014]处理模块,用于通过所分配的当前事件处理线程对业务事件进行处理,得到业务请求结果;其中,所述当前队列控制器、所述当前事件队列、所述当前线程池控制器和所述当前事件处理线程均属于当前业务处理模块。
[0015]第三方面,本申请实施例提供了一种业务事件的处理系统,该系统包括:
[0016]至少三个事件处理模块、服务接入控制器和服务接出控制器;其中,所述至少三个
事件处理模块之间相连接,每个事件处理模块中包括事件队列、事件处理线程、路由器、应答队列、应答线程、队列控制器、线程池控制器和超时控制器;
[0017]所述业务事件的处理系统用于执行本申请任意实施例所述的业务事件的处理方法。
[0018]第四方面,本申请实施例提供了一种计算机可读存储介质,其上存储有计算机程序,其中,该程序被处理器执行时实现本申请任意实施例所述的业务事件的处理方法。
[0019]本申请实施例提供了一种业务事件的处理方法、装置、系统及存储介质,通过当前队列控制器根据当前事件队列的使用率和当前事件队列对业务事件的存储速率,确定当前事件队列是否能够接收新的业务事件;若能够,则将新的业务事件存储到当前事件队列中;通过当前线程池控制器对当前事件处理线程进行调整,并根据该调整结果为当前事件队列中的业务事件分配当前事件处理线程;通过所分配的当前事件处理线程对业务事件进行处理,得到业务请求结果。本申请能够实现对系统资源的合理分配,从而使得系统资源使用达到最优化。
[0020]应当理解,本部分所描述的内容并非旨在标识本申请的实施例的关键或重要特征,也不用于限制本申请的范围。本申请的其它特征将通过以下的说明书而变得容易理解。
附图说明
[0021]附图用于更好地理解本方案,不构成对本申请的限定。其中:
[0022]图1A为本申请实施例提供的一种业务事件的处理方法的第一结构示意图;
[0023]图1B为本申请实施例提供的一种业务事件的处理方法的第一流程示意图;
[0024]图2为本申请实施例提供的一种业务事件的处理方法的第二流程示意图;
[0025]图3为本申请实施例提供的一种业务事件的处理方法的第三流程示意图;
[0026]图4为本申请实施例提供的一种业务事件的处理装置的第二结构示意图;
[0027]图5为本申请实施例提供的一种业务事件的处理系统的第三结构示意图。
具体实施方式
[0028]为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
[0029]实施例一
[0030]图1A为本申请实施例提供的一种业务事件的处理方法的第一结构示意图;
[0031]图1B为本申请实施例提供的一种业务事件的处理方法的第一流程示意图。本实施例可适用于基于SEDA架构在高并发场景下对业务事件进行请求的情况。本实施例提供的一种业务事件的处理方法可以由本申请实施例提供的业务事件的处理装置来执行,该装置可以通过软件和/或硬件的方式实现,并集成在执行本方法的电子设备中,并集成在执行本方法的业务事件的处理系统中。
[0032]参见图1A,本申请中的业务事件处理系统包括至少三个业务处理模块,图1A中仅示出了两个业务处理模块,每个业务处理模块包括了路由器、事件队列、事件处理线程。业
务事件的处理过程具体为:若以业务处理模块1为当前业务处理模块,则业务处理模块2为下一业务处理模块。以一个业务事件为例,业务请求方向业务事件处理系统发送业务事件,通过当前业务处理模块中的当前路由器将该业务事件存储至当前事件队列中,再通过当前事件处理线程从当前事件队列中获取到该业务事件,并对该业务事件进行处理。然后,通过下一业务处理模块中的下一路由器将该业务事件存储至下一事件队列中,由下一业务处理模块对该业务事件继续进行处理,直至通过若干个业务处理模块对该业务事件处理完成。
[0033]需要说明的是,由于本申请中的业务事件处理系统包括至少三个业务处理模块,所以在本申请中当前业务处理模块中的“当前”二字仅用于与下一业务处理模块进行区分,是用于表明当前时刻对业务事件进行处理的是哪一个业务处理模块。同理,当前业务处理模块中的当前队列控制器、当前事件队列、当前事件处理线程、当前线程池控制器和当前路由器等也仅用本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种业务事件的处理方法,其特征在于,所述方法包括:通过当前队列控制器根据当前事件队列的使用率和所述当前事件队列对业务事件的存储速率,确定所述当前事件队列是否能够接收新的业务事件;若能够,则将所述新的业务事件存储到所述当前事件队列中;通过所述当前线程池控制器对当前事件处理线程进行调整,并根据该调整结果为所述当前事件队列中的业务事件分配当前事件处理线程;通过所分配的当前事件处理线程对业务事件进行处理,得到业务请求结果;其中,所述当前队列控制器、所述当前事件队列、所述当前线程池控制器和所述当前事件处理线程均属于当前业务处理模块。2.根据权利要求1所述的方法,其特征在于,所述通过所述当前线程池控制器对当前事件处理线程进行调整,包括:通过所述当前队列控制器统计所述业务事件在所述当前事件队列中的停留时间,若所述停留时间超过预设时间,则向当前线程池控制器发送通知消息,以使所述当前线程池控制器增加所述当前事件处理线程的数量;其中,所述当前线程池控制器属于当前业务处理模块。3.根据权利要求1所述的方法,其特征在于,所述通过所述当前线程池控制器对当前事件处理线程进行调整,包括:通过当前线程池控制器根据所述当前事件处理线程的使用率、所述当前事件队列中业务事件的数量,对所述当前事件处理线程的数量进行调整。4.根据权利要求1所述的方法,其特征在于,还包括:通过所述当前队列控制器根据当前应答队列的使用率和当前应答队列对业务事件的存储速率,确定所述当前应答队列是否能够接收新的业务事件;若能够,则将所述新的业务事件存储到所述当前应答队列中;通过所述当前线程池控制器对当前应答线程进行调整,并根据该调整结果为所述当前应答队列中的业务事件分配当前应答线程;通过所分配的当前应答线程对业务事件进行处理,得到业务应答结果;通过当前超时控制器记录所述业务事件从存储到所述当前事件队列中到得到业务应答结果之间的时间间隔;若所述时间间隔大于预设时间,则向请求发起方返回系统繁忙通知报文;其中,所述当前应答队列、所述当前应答线程和所述当前超时控制器均属于当前业务处理模块。5.根据权利要求1所述的方法,...

【专利技术属性】
技术研发人员:张振兵孙海英唐俊军刘乐宋龙飞李蒙蒙
申请(专利权)人:上海浦东发展银行股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1