一种业务事件的处理系统以及处理方法、装置和设备制造方法及图纸

技术编号:27876636 阅读:13 留言:0更新日期:2021-03-31 00:53
本发明专利技术实施例公开了一种业务事件的处理系统以及处理方法、装置和设备。其中,该系统包括:事件管理组件、代码绑定组件和事件执行组件,事件管理组件内注册有目标应用运行时的各业务事件;代码绑定组件面向事件管理组件内已注册的每一业务事件,在每一许可执行方式下分别绑定支持多语言编译转换的中间业务代码;事件执行组件如果在目标应用运行时接收到目标业务事件的触发消息,则采用每一许可执行方式对应执行目标业务事件在该许可执行方式下绑定的中间业务代码。本发明专利技术实施例提供的技术方案,实现业务事件的多语音编译和多方式执行,保证业务事件的执行可移植性和可扩展性,提高目标应用运行的安全性和高效性。

【技术实现步骤摘要】
一种业务事件的处理系统以及处理方法、装置和设备
本专利技术实施例涉及数据处理
,尤其涉及一种业务事件的处理系统以及处理方法、装置和设备。
技术介绍
在互联网领域内针对不同业务类型已经开发有大量应用程序,每一应用程序在执行相应的核心业务操作时,该核心业务下会扩展出大量支持该核心业务准确执行的旁路逻辑,此时该应用程序在核心业务的处理过程中,通常也需要处理各个旁路逻辑下指定的业务事件,以确保核心业务的执行准确性。目前,在核心业务的处理过程中,应用程序对于各个旁路逻辑下指定的业务事件,存在如下三种处理方式:1)基于核心业务代码的开发语言,在核心业务代码中编写旁路逻辑下业务事件的处理代码,并重启修改后的核心业务代码,此时将旁路逻辑嵌入到核心业务中,容易造成核心业务代码泄露,使得核心业务执行时存在一定的稳定性风险。2)基于Lua或者其他脚本语言作为旁路逻辑下业务事件的代码语言,但是需要将脚本语言转换成核心业务的语言,从而限制了脚本的开发语言,而且由于应用程序通常不支持除原生语言外的其他脚本语言的运行,使得脚本代码的可移植性较差。3)将核心业务处理过程中触发的各个旁路逻辑下的业务事件,按照消息的形式异步发送到Kafka消息中间件中,然后通过消息消费进程不断处理Kafka消息中间件内的各个业务事件,能够实现业务事件执行与核心业务处理的解耦,但是仅支持异步处理方式,无法同步向核心业务返回各个业务事件的处理结果,从而影响核心业务的执行效率。
技术实现思路
本专利技术实施例提供了一种业务事件的处理系统以及处理方法、装置和设备,实现业务事件的多语音编译和多方式执行,保证业务事件的执行可移植性和可扩展性,提高目标应用运行的安全性和高效性。第一方面,本专利技术实施例提供了一种业务事件的处理系统,该系统包括:事件管理组件、代码绑定组件和事件执行组件,所述事件管理组件内注册有目标应用运行时的各业务事件;其中,所述代码绑定组件面向所述事件管理组件内已注册的每一业务事件,在每一许可执行方式下分别绑定支持多语言编译转换的中间业务代码;所述事件执行组件如果在所述目标应用运行时接收到目标业务事件的触发消息,则采用每一许可执行方式对应执行所述目标业务事件在该许可执行方式下绑定的中间业务代码。第二方面,本专利技术实施例提供了一种业务事件的处理方法,应用于上述第一方面所述的业务事件的处理系统中,该方法包括如下非顺序执行的步骤:通过代码绑定组件面向事件管理组件内已注册的每一业务事件,在每一许可执行方式下分别绑定支持多语言编译转换的中间业务代码;如果在目标应用运行时通过事件执行组件接收到目标业务事件的触发消息,则通过所述事件执行组件采用所述目标业务事件注册时的每一许可执行方式,对应执行所述目标业务事件在该许可执行方式下绑定的中间业务代码;其中,所述事件管理组件内注册有目标应用运行时的各业务事件。第三方面,本专利技术实施例提供了一种业务事件的处理装置,配置于上述第一方面所述的业务事件的处理系统中,该装置包括:代码绑定模块,用于通过代码绑定组件面向事件管理组件内已注册的每一业务事件,在每一许可执行方式下分别绑定支持多语言编译转换的中间业务代码;业务代码执行模块,用于如果在目标应用运行时通过事件执行组件接收到目标业务事件的触发消息,则通过所述事件执行组件采用所述目标业务事件注册时的每一许可执行方式,对应执行所述目标业务事件在该许可执行方式下绑定的中间业务代码;其中,所述事件管理组件内注册有目标应用运行时的各业务事件。第四方面,本专利技术实施例提供了一种计算机设备,该计算机设备包括:一个或多个处理器;存储装置,用于存储一个或多个程序;当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现本专利技术任意实施例所述的业务事件的处理方法。第五方面,本专利技术实施例提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现本专利技术任意实施例所述的业务事件的处理方法。本专利技术实施例提供的一种业务事件的处理系统以及处理方法、装置和设备,在事件管理组件内注册目标应用运行时存在的各个业务事件,通过代码绑定组件面向事件管理组件内已注册的每一业务事件,在每一许可执行方式下分别绑定支持多语言编译转换的中间业务代码,使得业务事件执行与目标应用运行之间能够资源隔离,从而实现业务事件的多语音编译和多方式执行,保证业务事件的执行可移植性和可扩展性;同时,如果在目标应用运行时通过事件执行组件接收到目标业务事件的触发消息,则采用目标业务事件的每一许可执行方式对应执行目标业务事件在该许可执行方式下绑定的中间业务代码,避免对目标应用运行产生影响,从而提高目标应用运行的安全性和高效性。附图说明通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本专利技术的其它特征、目的和优点将会变得更明显:图1为本专利技术实施例一提供的一种业务事件的处理系统的原理架构图;图2为本专利技术实施例二提供的一种业务事件的处理系统的结构示意图;图3为本专利技术实施例三提供的一种业务事件的处理系统的结构示意图;图4为本专利技术实施例四提供的一种业务事件的处理方法的流程图;图5为本专利技术实施例五提供的一种业务事件的处理方法的流程图;图6为本专利技术实施例六提供的一种业务事件的处理装置的结构示意图;图7为本专利技术实施例七提供的一种计算机设备的结构示意图。具体实施方式下面结合附图和实施例对本专利技术作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本专利技术,而非对本专利技术的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本专利技术相关的部分而非全部结构。此外,在不冲突的情况下,本专利技术中的实施例及实施例中的特征可以相互组合。由于各个业务应用在执行相应的核心业务操作时,该核心业务下会扩展出大量辅助该核心业务准确执行的旁路逻辑,因此为了确保核心业务的执行准确性,在该业务应用运行过程中,通常需要处理各个旁路逻辑下指定的业务事件;此时,本专利技术实施例会在任一业务应用中针对所存在的各个旁路逻辑指定的业务事件,专门设计一种新的事件处理系统,并内嵌到该业务应用中,用于在该业务应用的运行过程中,执行和管理与每一业务事件绑定的业务代码。此时,为了解决开发语言的包容性以及可移植性的问题,本专利技术实施例可以选用抽象描述代码执行环境的中间字节码技术(WebAssembly,WASM)来解决;WASM代码是一种抹平了不同架构的机器码,支持多种语言(如AssemblyScript、C\C++,Rust、Golang和Python等)下的编译代码能够转换为WASM代码。因此,本专利技术实施例可以基于WASM中间字节码,构建一个支持同步和异步的事件处理系统,并内嵌入业务应用中,以实现业务事件的多语音编译和多方式执行,保证业务事件的执行可移植性和可扩展性,并提高业务应用运行的安全性和高效性。实施例一图1为本发本文档来自技高网...

【技术保护点】
1.一种业务事件的处理系统,其特征在于,包括:事件管理组件、代码绑定组件和事件执行组件,所述事件管理组件内注册有目标应用运行时的各业务事件;其中,/n所述代码绑定组件面向所述事件管理组件内已注册的每一业务事件,在每一许可执行方式下分别绑定支持多语言编译转换的中间业务代码;/n所述事件执行组件如果在所述目标应用运行时接收到目标业务事件的触发消息,则采用每一许可执行方式对应执行所述目标业务事件在该许可执行方式下绑定的中间业务代码。/n

【技术特征摘要】
1.一种业务事件的处理系统,其特征在于,包括:事件管理组件、代码绑定组件和事件执行组件,所述事件管理组件内注册有目标应用运行时的各业务事件;其中,
所述代码绑定组件面向所述事件管理组件内已注册的每一业务事件,在每一许可执行方式下分别绑定支持多语言编译转换的中间业务代码;
所述事件执行组件如果在所述目标应用运行时接收到目标业务事件的触发消息,则采用每一许可执行方式对应执行所述目标业务事件在该许可执行方式下绑定的中间业务代码。


2.根据权利要求1所述的处理系统,其特征在于,所述事件管理组件包括事件注册接口和事件触发接口;其中,
所述事件注册接口采用事件标识和许可执行方式注册所述目标应用运行时的各业务事件;
所述事件触发接口按照事件标识和事件触发条件,实时检测各所述业务事件的触发状态,并向所述事件执行组件发送所述目标业务事件的触发消息。


3.根据权利要求1所述的处理系统,其特征在于,所述代码绑定组件包括绑定接口、绑定移除接口和代码升级接口;其中,
所述绑定接口按照事件标识、代码标识、实际执行方式和代码字节流,为每一业务事件,在各许可执行方式下分别绑定对应的中间业务代码;
所述绑定移除接口按照事件标识、代码标识和实际执行方式,移除各业务事件在对应许可执行方式下已绑定的中间业务代码;
所述代码升级接口按照代码标识和代码升级字节流,更新各业务事件已绑定的中间业务代码。


4.根据权利要求1所述的处理系统,其特征在于,所述业务事件的许可执行方式包括同步执行方式和异步执行方式中的至少一种。


5.根据权利要求1-4任一项所述的处理系统,其特征在于,还包括存储组件;
所述存储组件采用键值对的方式记录每一业务事件在不同许可执行方式下已绑定的中间业务代码,以及该中间业务代码的代码字节流。


6.根据权利要求5所述的处理系统,其特征在于,所述存储组件包括代码列表和绑定关系列表;其中,
所述绑定关系列表以事件标识和许可执行方式为键名,记录每一业务组件在不同许可执行方式下已绑定的中间业务代码的代码标识;
所述代码列表以代码标识为键名,记录每一业务组件已绑定的各个中间业务代码的代码字节流。


7.根据权利要求1-4任一项所述的处理系统,其特征在于,还包括虚拟环境创建组件;
所述虚拟环境创建组件在所述目标应用启动时,根据每一业务事件已绑定的各中间业务代码的执行配置,创建对应的代码虚拟运行环境,并在所述代码虚拟运行环境内装载每一业务事件已绑定的各中间业务代码的扩展方法。


8.根据权利要求1-4任一项所述的处理系统,其特征在于,还包括控制中心;
所述控制中心面向所述事件管理组件内已注册的每一业务事件,采用多语言开发对应的初始业务代码,并转换为对应的中间业务代码,以绑定到该业务事件的对应许可执行方式下。


9.根据权利要求8所述的处理系统,其特征在于,所述控制中心通过操作界面展示所述事件管理组件内已注册的每一业务事件所绑定的中间业务代码。


10.一种业务事件的处理方法,其特...

【专利技术属性】
技术研发人员:刘智杰
申请(专利权)人:百果园技术新加坡有限公司
类型:发明
国别省市:新加坡;SG

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

1