CN110825457A - 业务引擎中业务处理的方法、装置、存储介质及电子设备 - Google Patents
业务引擎中业务处理的方法、装置、存储介质及电子设备 Download PDFInfo
- Publication number
- CN110825457A CN110825457A CN201911065442.3A CN201911065442A CN110825457A CN 110825457 A CN110825457 A CN 110825457A CN 201911065442 A CN201911065442 A CN 201911065442A CN 110825457 A CN110825457 A CN 110825457A
- Authority
- CN
- China
- Prior art keywords
- processing
- service
- task
- task object
- business
- 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.)
- Withdrawn
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44505—Configuring for program initiating, e.g. using registry, configuration files
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/25—Integrating or interfacing systems involving database management systems
- G06F16/252—Integrating or interfacing systems involving database management systems between a Database Management System and a front-end application
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Human Computer Interaction (AREA)
- Data Mining & Analysis (AREA)
- Stored Programmes (AREA)
Abstract
本申请实施例公开了一种业务引擎中业务处理的方法、装置、存储介质及电子设备。该方法包括:接收到客户端的业务请求时,对业务请求进行标准化处理;标准化处理包括数据块标准化、接口标准化以及通信标准化中的至少一种;将标准化处理后的业务请求采用预设过滤器进行过滤,得到过滤处理结果;其中,过滤器包括网络过滤器和业务过滤器中的至少一种;将过滤处理结果分解为至少一个任务对象,并对任务对象进行编号;按照任务对象的编号,采用链式处理规则对所有的任务对象进行处理,并将得到的处理结果返回至客户端。通过运行本申请所提供的技术方案,可以基于业务引擎的结构性建设,是业务平台具有可配置性、更新灵活以及简便业务实现过程的效果。
Description
技术领域
本申请实施例涉及计算机技术领域,尤其涉及一种业务引擎中业务处理的方法、装置、存储介质及电子设备。
背景技术
随着网络技术的迅速发展,人们的网络消费活动逐渐增多,这也提高了供应商、制造商以及零售商等一系列的供应链业务活动的频繁程度。由于业务功能的逐渐完善,业务种类的逐渐繁多,导致在原有的供应商、制造商以及零售商的基础上,延伸出更为复杂的供应链业务活动,例如制造、包装、加工、交易、物流、零售、资金等。不同的活动都可以在一个业务请求中被关联到,这就导致的企业对业务平台的开发日趋复杂。而且,随着业务活动的类型的逐渐发展,业务平台往往需要进行多次的重新开发。而原有的业务平台,不仅由于需要抽离出每一个业务活动而造成的实现过程复杂,同时原有的业务平台的架构往往不能够符合业务发展的需求。
发明内容
本申请实施例提供一种业务引擎中业务处理的方法、装置、存储介质及电子设备,以基于业务引擎的结构性建设,是业务平台具有可配置性、更新灵活以及简便业务实现过程的效果。
第一方面,本申请实施例提供了一种业务引擎中业务处理的方法,该方法包括:
接收到客户端的业务请求时,对所述业务请求进行标准化处理;其中,所述标准化处理包括数据块标准化、接口标准化以及通信标准化中的至少一种;
将标准化处理后的业务请求采用预设过滤器进行过滤,得到过滤处理结果;其中,所述过滤器包括网络过滤器和至少一个业务过滤器;
将所述过滤处理结果分解为至少一个任务对象,并对所述任务对象进行编号;
按照任务对象的编号,采用链式处理规则对所有的任务对象进行处理,并将得到的处理结果返回至客户端。
可选的,所述方法还包括:
响应于业务引擎的配置请求,进入业务引擎配置界面;
根据接收到的配置操作结果,确定业务引擎框架;其中,所述业务引擎框架包括:标准化处理节点,过滤节点,分解编号节点以及任务对象处理节点。
可选的,在将所述过滤处理结果分解为至少一个任务对象,并对所述任务对象进行编号之后,所述方法还包括:
根据任务对象的编号,对所述任务对象处理进度进行跟踪;
若跟踪到所述任务对象的处理进度发生变化,则变更任务对象的任务状态;其中,所述任务状态是对所述任务对象进行编号时预留的标记字段。
可选的,按照任务对象的编号,采用链式处理规则对所有的任务对象进行处理,并将得到的处理结果返回至客户端,包括:
确定与任务对象的编号对应的业务处理器;
通过与任务对象的编号对应的业务处理器对任务对象进行处理,得到当前处理结果后,将当前处理结果发送至与下一个与任务对象的编号相对应的业务处理器进行处理,直至所有任务对象处理完成,得到最终处理结果;
将得到的最终处理结果返回至客户端。
可选的,在确定与任务对象的编号对应的业务处理器之后,所述方法还包括:
判断所述业务处理器上面是否设置有调节器;
若是,则根据所设置的调节器的处理规则对所属任务对象进行处理,得到调节处理结果;
根据所述调节器的逻辑规则,确定将调节处理结果发送至下一个与任务对象的编号相对应的业务处理器进行处理,或者作为最终处理结果。
第二方面,本申请实施例提供了一种业务引擎中业务处理的装置,该装置包括:
标准化处理模块,用于接收到客户端的业务请求时,对所述业务请求进行标准化处理;其中,所述标准化处理包括数据块标准化、接口标准化以及通信标准化中的至少一种;
过滤模块,用于将标准化处理后的业务请求采用预设过滤器进行过滤,得到过滤处理结果;其中,所述过滤器包括网络过滤器和至少一个业务过滤器;
分解编号模块,用于将所述过滤处理结果分解为至少一个任务对象,并对所述任务对象进行编号;
任务对象处理模块,用于按照任务对象的编号,采用链式处理规则对所有的任务对象进行处理,并将得到的处理结果返回至客户端。
可选的,所述装置还包括业务引擎配置模块,所述业务引擎配置模块,具体用于:
响应于业务引擎的配置请求,进入业务引擎配置界面;
根据接收到的配置操作结果,确定业务引擎框架;其中,所述业务引擎框架包括:标准化处理节点,过滤节点,分解编号节点以及任务对象处理节点。
可选的,所述装置还包括任务状态变更模块,所述任务状态变更模块,具体用于:
根据任务对象的编号,对所述任务对象处理进度进行跟踪;
若跟踪到所述任务对象的处理进度发生变化,则变更任务对象的任务状态;其中,所述任务状态是对所述任务对象进行编号时预留的标记字段。
可选的,所述任务对象处理模块,包括:
业务处理器确定单元,用于确定与任务对象的编号对应的业务处理器;
处理单元,用于通过与任务对象的编号对应的业务处理器对任务对象进行处理,得到当前处理结果后,将当前处理结果发送至与下一个与任务对象的编号相对应的业务处理器进行处理,直至所有任务对象处理完成,得到最终处理结果;
处理结果返回单元,用于将得到的最终处理结果返回至客户端。
可选的,所述任务对象处理模块,还包括:
调节器判断单元,用于判断所述业务处理器上面是否设置有调节器;
调节器处理单元,用于若所述调节器判断单元判断为是,则根据所设置的调节器的处理规则对所属任务对象进行处理,得到调节处理结果;
调节器处理结果返回单元,用于根据所述调节器的逻辑规则,确定将调节处理结果发送至下一个与任务对象的编号相对应的业务处理器进行处理,或者作为最终处理结果。
第三方面,本申请实施例提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器运行时实现如本申请实施例所述的业务引擎中业务处理的方法。
第四方面,本申请实施例提供了一种电子设备,包括存储器,处理器及存储在存储器上并可在处理器运行的计算机程序,所述处理器运行所述计算机程序时实现如本申请实施例所述的业务引擎中业务处理的方法。
本申请实施例所提供的技术方案,接收到客户端的业务请求时,对所述业务请求进行标准化处理;其中,所述标准化处理包括数据块标准化、接口标准化以及通信标准化中的至少一种;将标准化处理后的业务请求采用预设过滤器进行过滤,得到过滤处理结果;其中,所述过滤器包括网络过滤器和至少一个业务过滤器;将所述过滤处理结果分解为至少一个任务对象,并对所述任务对象进行编号;按照任务对象的编号,采用链式处理规则对所有的任务对象进行处理,并将得到的处理结果返回至客户端。通过采用本申请所提供的技术方案,可以基于业务引擎的结构性建设,是业务平台具有可配置性、更新灵活以及简便业务实现过程的效果。
附图说明
图1是本申请实施例一提供的业务引擎中业务处理的方法的流程图;
图2是本申请实施例二提供的业务引擎的结构示意图;
图3是本申请实施例二提供的业务引擎的构建示意图;
图4是本申请实施例二提供的业务处理器处理过程示意图;
图5是本申请实施例三提供的业务引擎中业务处理的装置的结构示意图;
图6是本申请实施例五提供的一种电子设备的结构示意图。
具体实施方式
下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本申请,而非对本申请的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本申请相关的部分而非全部结构。
在更加详细地讨论示例性实施例之前应当提到的是,一些示例性实施例被描述成作为流程图描绘的处理或方法。虽然流程图将各步骤描述成顺序的处理,但是其中的许多步骤可以被并行地、并发地或者同时实施。此外,各步骤的顺序可以被重新安排。当其操作完成时所述处理可以被终止,但是还可以具有未包括在附图中的附加步骤。所述处理可以对应于方法、函数、规程、子例程、子程序等等。
实施例一
图1是本申请实施例一提供的业务引擎中业务处理的方法的流程图,本实施例可适于基于业务引擎进行业务请求的处理的情况,该方法可以由本申请实施例所提供的业务引擎中业务处理的装置运行,该装置可以由软件和/或硬件的方式来实现,并可集成于用于配置有业务引擎的智能终端的电子设备中。
如图1所示,所述业务引擎中业务处理的方法包括:
S110、接收到客户端的业务请求时,对所述业务请求进行标准化处理;其中,所述标准化处理包括数据块标准化、接口标准化以及通信标准化中的至少一种。
其中,客户端可以是与平台进行通信的设备,例如是用户使用的智能终端。客户端可以通过登录来访问业务平台,并且向业务平台发送业务请求,例如可以根据用户的操作来发送转账的业务请求。其中,由于业务请求种类的繁多,而且发出方式也多种多样,因此可以在接收到业务请求之后,对该业务请求进行标准化处理。
本方案中,标准化处理可以是包括数据块标准化、接口标准化以及通信标准化中的至少一种。具体的,可以通过定义业务的输入输出数据标准,包括输入数据块、输出数据块(也可衍生出自定义通信协议规范等),一般可以包括报文头、身份信息、应用数据以及版本号等信息。在本方案中,标准化处理可以在引擎的业务入口层设置,以对业务的标准网关,完成数据块标准化、接口标准化、通信标准化等,后期可配合通信、行业标准等建设自身业务的标准API(Application Programming Interface,应用程序接口)、SDK(SoftwareDevelopment Kit,软件开发工具包)或通信协议(如xml规范)等。本方案在业务请求传入业务引擎前,需要事先根据引擎的标准数据通信块转换或者由引擎内自动根据标准协议转换为标准数据块。这样设置的好处是可以有利于后续处理过程中对业务请求的识别以及反馈的效率和准确性。
S120、将标准化处理后的业务请求采用预设过滤器进行过滤,得到过滤处理结果;其中,所述过滤器包括网络过滤器和至少一个业务过滤器。
其中,转化后的标准数据块请求到过滤处理器,对请求资源或者响应信息进行过滤,包括网络过滤器和业务过滤器;业务过滤器内置过滤器链,经过过滤器,一个过滤器执行完成后交给下一个过滤器继续处理,直到完成所有过滤器处理。这样设置可以过滤网络请求,完成后交给下一个过滤器或业务处理器对业务进行处理。其中过滤器属网关性质,常见场景如权限过滤、字符过滤以及上下文信息过滤等。其中,业务过滤器的个数可以是一个或者多个,各个业务过滤器之间进行过滤的功能可以存在不同。
S130、将所述过滤处理结果分解为至少一个任务对象,并对所述任务对象进行编号。
其中,对过滤处理后的结果,可以根据预先设置的分解规则,将一个业务请求分解成一个、两个或者更多个任务对象。其中各任务对象可以通过实现业务请求的某一部分功能来进行划分,例如权限识别可以作为一个任务对象,转账金额的确定可以作为一个任务对象,支付密码识别可以作为一个任务对象。
本方案中,可以在划分任务对象之后,对每个任务对象统一编号,标记任务对象的任务状态以及维护任务参数等,这样可以便于追踪任务对象的执行情况,并及时进行异常补偿等。
S140、按照任务对象的编号,采用链式处理规则对所有的任务对象进行处理,并将得到的处理结果返回至客户端。
其中,任务对象的编号可以是与对业务请求处理的逻辑顺序相关,并且可以通过链式处理规则对任务对象进行处理。其中链式处理规则即为根据任务对象的编号,确定处理顺序,并将前一个任务对象处理完成的结果,作为下一个任务对象的处理条件。其中也可以存在并发执行的情况,具体可以通过任务对象之间的逻辑关联关系来确定。在得到处理结果之后,可以将其返回至客户端,由此客户端可以得到基于业务引擎的业务处理结果。
本申请实施例所提供的技术方案,接收到客户端的业务请求时,对所述业务请求进行标准化处理;其中,所述标准化处理包括数据块标准化、接口标准化以及通信标准化中的至少一种;将标准化处理后的业务请求采用预设过滤器进行过滤,得到过滤处理结果;其中,所述过滤器包括网络过滤器和至少一个业务过滤器;将所述过滤处理结果分解为至少一个任务对象,并对所述任务对象进行编号;按照任务对象的编号,采用链式处理规则对所有的任务对象进行处理,并将得到的处理结果返回至客户端。通过采用本申请所提供的技术方案,可以基于业务引擎的结构性建设,是业务平台具有可配置性、更新灵活以及简便业务实现过程的效果。
在上述技术方案的基础上,可选的,所述方法还包括:响应于业务引擎的配置请求,进入业务引擎配置界面;根据接收到的配置操作结果,确定业务引擎框架;其中,所述业务引擎框架包括:标准化处理节点,过滤节点,分解编号节点以及任务对象处理节点。其中,可以在业务引擎启动之前,对业务引擎进行配置。具体的,可以由工作人员通过访问业务引擎的配置界面,将其中的信息进行配置,例如采用拖拽或者键入的方式对业务引擎的需要使用的功能工具进行配置。例如,业务引擎需要事先配置好节点链路器中对应的各个节点处理器,如监听器、配置文件预加载、规则文件扫描以及异常处理等,支持顺序编排等,然后启动业务引擎框架。整个配置过程中可以为工作人员提供基本规则,也可以在基本规则的基础上供工作人员进行扩展。这样设置的好处是可以根据用户的操作对业务引擎进行灵活的配置,还能够在基本规则的基础上,供用户自行开发适合自己业务平台服务的规则,可以扩大本方案所提供的业务平台的适用范围。
在上述各技术方案的基础上,可选的,在将所述过滤处理结果分解为至少一个任务对象,并对所述任务对象进行编号之后,所述方法还包括:根据任务对象的编号,对所述任务对象处理进度进行跟踪;若跟踪到所述任务对象的处理进度发生变化,则变更任务对象的任务状态;其中,所述任务状态是对所述任务对象进行编号时预留的标记字段。其中,可以根据编号,对任务对象的处理进度进行跟踪,例如未处理或者处理完成,可以通过对任务对象的任务状态进行标记,来区分任务的处理进度。除此之外,还可以存在处理失败或者处理错误的情况,在这种情况下,也可以通过标记字段对任务状态进行标记,以便于供工作人员及时发现和处理。本技术方案通过设置任务状态的标记字段,可以用于对任务对象的处理进度的掌握,有利于及时反馈任务对象的处理信息。
在上述各技术方案的基础上,可选的,按照任务对象的编号,采用链式处理规则对所有的任务对象进行处理,并将得到的处理结果返回至客户端,包括:确定与任务对象的编号对应的业务处理器;通过与任务对象的编号对应的业务处理器对任务对象进行处理,得到当前处理结果后,将当前处理结果发送至与下一个与任务对象的编号相对应的业务处理器进行处理,直至所有任务对象处理完成,得到最终处理结果;将得到的最终处理结果返回至客户端。
其中,在确定任务对象的编号之后,可以根据编号来确定各任务对象进行处理的业务处理器。其中业务处理器可以是与任务对象意义对应的,即每个业务处理器负责处理业务请求中的一个任务对象。业务处理器可以采用链式处理规则对任务对象进行处理,即通过与任务对象的编号对应的业务处理器对任务对象进行处理,得到当前处理结果后,将当前处理结果发送至与下一个与任务对象的编号相对应的业务处理器进行处理,直至所有任务对象处理完成,得到最终处理结果。本技术方案这样设置的好处是可以通过业务处理器对任务对象的单独处理,有利于对业务处理器的更新和优化,从而提高对业务请求的响应的速度以及准确性。
在上述各技术方案的基础上,可选的,在确定与任务对象的编号对应的业务处理器之后,所述方法还包括:判断所述业务处理器上面是否设置有调节器;若是,则根据所设置的调节器的处理规则对所属任务对象进行处理,得到调节处理结果;根据所述调节器的逻辑规则,确定将调节处理结果发送至下一个与任务对象的编号相对应的业务处理器进行处理,或者作为最终处理结果。其中,对每个业务处理器,可以设置有调节器,其中调节器可以由自身的处理逻辑规则,可以通过调节器来对业务处理器的处理逻辑进行更新,从而实现对业务请求的各个任务对象,可以有针对性的进行更新处理,从而保证了对业务请求的各个任务对象处理结果的准确性。
实施例二
为了能够让本领域技术人员更加清楚的了解本申请提供的技术方案,本申请还提供了一个优选实施方式。
图2是本申请实施例二提供的业务引擎的结构示意图。如图2所示,其中,业务引擎整体结构分为三层,业务入口层、产品化层、核心领域层。
业务入口层,作为业务的标准网关,完成数据块标准化、接口标准化、通信标准化等,后期可配合通信、行业标准等建设自身业务的标准API、SDK或通信协议(如xml规范)等。
产品化层,包括基础服务、业务间服务,基础服务主要提供基础设施服务和公共服务,如元数据服务等;业务间服务完成业务之间的各种组合、产品化需求等,结合业务拼装装置或编排服务,实现业务逻辑视图化操作,可快速建立业务组件、业务功能。
核心领域层,负责本业务领域内的核心服务能力建设,包括相对原子的业务单元,可通过SOA(Service-Oriented Architecture,面向服务的架构)化或者微服务化实现,具体根据业务实际场景做选择。
其中,业务拼装装置和外围系统服务为辅助的装置,可以通过业务拼装装置实现对基础服务的拼装,组合成需要的服务。外围系统服务可以是在外围系统能够处理的业务由外部处理后返回至本业务引擎,这样可以通过简单与外部系统的交互,来提高本引擎框架的工作效率。
其中,基础设施可以是包括数据、安全、监控以及日志等。基础设施可以用来对各个层级的功能的支持,从而可以保证业务引擎的功能的完整运行。
通过本装置的设计可以达到快速构建业务引擎、降低研发成本和维护成本等效果,且有效保障业务结构的连续性、稳定性和扩展性。
在本技术方案中,为了更好的完成业务引擎的建设,建议在业务建设前期,充分了解并熟悉业务场景、第一手的业务资料、业务流程信息等,借助于业务场景的操作流程,可以更明确地完成领域业务语言描述、业务边界关系梳理,常见业务划分边界如,核心域、扩展域、事件域,分别表示业务所能触达的范围;核心域,描述业务的主要职责功能,如产品发布、产品查询等;扩展域,描述业务的可扩展的功能属性,如增值业务、交易信息等;事件域,指业务涉及的外部事件,描述外部行为引起业务变化的一系列动作,如常见的增值业务下的保险、权益(积分、优惠券)等。
本方案将业务引擎进一步分解为应用处理器集合,将复杂的应用工程结构细分成一系列功能较单一的活动序列,开发者通过设计各个节点的活动序列,完成应用的加载、卸载等。
图3是本申请实施例二提供的业务引擎的构建示意图。如图3所示,业务引擎可支持多个节点处理器,具体归纳为,一个应用是由一组节点处理器组成,具体的业务执行全部由节点处理器完成;节点处理器执行应该是有序的,由根节点(节点链路器)统一调度;节点处理器可以统一管理配置信息,完成配置的常见生命周期,如加载、执行、卸载等;引擎提供上下文,方便应用层数据共享。
业务核心引擎,包括节点链路器、智能流程引擎、数据标准块、过滤处理器、任务实体、业务处理器、调节器、异常框架、虚拟文件系统;各模块职责单一低耦合、入侵性较低,且整体设计完全具备可移植性。
301,业务引擎需要事先配置好节点链路器中对应的各个节点或者叫各个子应用处理器,如监听器、配置文件预加载、规则文件扫描、异常处理等,支持顺序编排等,然后启动业务引擎框架。
302,智能流程引擎或者叫业务拼装装置,通过此装置将业务组件或者业务功能(产品化服务)进行逻辑流程控制组合(可视图化拖拽分支等),支持顺序拼装、并发执行、EL表达式等,同时可对分支处理结果进行异常编排;业务编排过程中,也可对单个分支进行校准分支覆盖,如正常业务执行异常或失败,不需要退出或走到异常分支,可转入校准分支执行,校准完毕后,继续下一个业务分支执行(校准过程也是一种业务分支,可支持多版本的业务单元)。
303,业务请求传入业务引擎前,需要事先根据引擎的标准数据通信块转换或者由引擎内自动根据标准协议转换为标准数据块。
304,转化后的标准数据块请求到过滤处理器,对请求资源或者响应信息进行过滤,包括网络、业务过滤器;业务过滤器内置过滤器链,经过过滤处理器(1…n个),一个过滤器执行完成后交给下一个过滤器继续处理,直到完成所有过滤器处理。
305,过滤器完成后,业务请求转发到业务单元(此处应检查系统节点链路器的配置,是否有前置处理或并发处理,如果有以节点链路器执行顺序优先,直到所有前置操作执行完成),包括任务实体、业务处理器、调节器,任务实体,通过事先编排/拼装好的业务流程(支持顺序执行、并发执行),完成业务流程链执行过程,常见的业务流程一般有多个业务单元组成,按照业务顺序或根据流程引擎的配置和编排顺序执行,多个业务处理器的话,每个业务处理器的处理结果或作为结果或作为连续出现的请求继续派发到下一个处理器,直到最后一个业务处理器完成处理;如果该业务单元上覆盖有调节器链路,优先执行调节器链路(链路处理顺序或规则同业务处理器),调节器链路完成后,会根据调节器指定流程完成剩余过程;如业务单元执行过程遇到异常,正常抛出异常,并由业务引擎捕获并处理;流程执行完成后,检查节点链路器是否有后置处理,如果有,继续执行,执行完成后返回执行结果,业务流程结束。
其中,数据标准块,定义业务的输入输出数据标准,包括输入数据块、输出数据块(也可衍生出自定义通信协议规范等),一般包括报文头、身份信息、应用数据、版本号等。
过滤处理器,主要职责是过滤网络请求,完成后交给下一个过滤器或业务处理器(属网关性质,常见场景如权限过滤、字符过滤、上下文信息过滤等),具体参见后续的独立介绍。
业务单元,包括任务实体、业务处理器、调节器;
a)任务实体,规范统一的输入请求,将业务请求转化为一个实体对象或者叫任务对象,对每个任务统一编号、标记任务状态、维护任务参数等,便于追踪任务执行情况、异常补偿等。
b)业务处理器,链式处理过程,包括处理器id、处理器名称、处理器级别,可实时追踪处理器状态,支持并发处理、子处理器执行等。
c)调节器,专用于调节业务处理器,近似业务处理器又有自己独立的职责,负责调解业务处理器流程,类似挂接节点,可在任意节点挂接调节器,便于业务更好、更健壮的执行,例,对一些关键业务节点单位加装调节器,设置一定阈值,触发后,可自动跳转调节器链路,继续执行业务,待修复业务节点,再恢复阈值。
异常框架,分为节点异常和应用异常,都是封装执行过程中产生的所有异常,且是checked excpetion类型,过滤所有运行时异常等,当某个节点处理时发生异常,处理器会中断原有流程,进入异常处理流程。在异常处理阶段,共有两次处理机会。
一次是当前节点的异常,可根据节点的业务逻辑定义合适的异常流程,性能也较优,例,参数转化异常节点不需要考虑SQL异常;另一次是应用级异常;
虚拟文件系统,提供各种类型文件的访问统一、快捷的模式,对文件资源进行管理时,无需关心底层的存储介质和文件系统类型,有利于实现内部项目结构模块化(包括vfs、file、schema等关键要素)。
智能流程引擎,用于组装、设计业务间处理流程,可配合视图化工具,拖拽方式,便于业务单元执行情况的跟踪、校准等;是面向组件型开发的流程执行框架,由一系列节点以及节点之间的连接组组成的流程引擎,本期主要提供逻辑流程控制,常见特性包括流程可继承、流程可重写、流程可重入、EL表达式、异常处理等。
节点链路器,由一组应用节点处理器组成,且执行是有序的,由节点统一调度;每个应用节点处理器以统一管理配置信息,完成配置的加载、变更、卸载;应用节点提供上下文,方便应用层数据共享。结构主要分为根节点RootNode、节点上下文NodeContext、节点处理器NodeProcessor、抽象节点处理器AbstractNodeProcessor等。可支持自定义扩展。
图4是本申请实施例二提供的业务处理器处理过程示意图。如图4所示:
客端业务请求到核心领域层,首先经过过滤处理器(1…n个),对请求资源或者响应信息进行过滤,包括网络、业务过滤器,完成相对全局的数据过滤、逻辑过滤等。
经过过滤器后,业务请求发到业务处理器,通过事先编排/拼装好的业务流程(顺序执行、并发执行),完成业务流程链执行过程(多个业务处理器同时处理的话,每个业务处理器结果作为下一个处理器的输入,直到完成所有处理器请求处理)。
当执行到业务流程单元内,首先判断是否有调节器链路,如果有,优先执行调节器链路,调节器链路完成后,会根据调节器指定流程完成剩余过程(调节器链路可对重点业务做覆盖包装,保障即使业务单元处理失败或异常,调节环路照样可以较好的完成业务请求);调节器环路可跨多个业务单元,作用类似业务旁路分支,配合智能业务拼装器,可视图化操作;调节器链路完成后,如有业务处理器,继续执行业务处理器链路,直到所有业务单元链路处理完成,退出并返回结果。
其中,过滤处理器,主要职责是过滤网络请求,完成后交给下一个过滤器或业务处理器(类似网关性质,常见场景如权限过滤、字符过滤、上下文信息过滤等);分为网络过滤器和内部过滤器,网络过滤器是请求和响应的唯一出入口,类似Filter过滤链,对请求资源或者响应信息进行过滤;内部过滤器,支持N个过滤器执行,一般对应用上下文进行前置、后置处理,处理完成后交给下一个过滤器或业务单元处理。(关于执行顺序,建议约定默认规则,比如以名称字母顺序等)。
过滤器如上文所说,包括网络过滤器和内置过滤器,网络过滤器(HttpFilter)是请求和响应过滤的唯一入口,通过内置过滤器实现过滤器链(FilterChain)机制,并提供标准配置,调用者基本无需修改即可使用。过滤器主要生命周期分为初始化、过滤、销毁;内置过滤器(InnerFilter),实现javax.servlet.Filter接口,由框架提供的过滤封装器(IFilterWrapper)进行管理。
本技术方案,通过本业务引擎设计方法和思路,更加注重业务引擎的结构性以及目标性建设。业务单元具备独特的设计优势,以及引擎塑造的可移植性、扩展性、内敛性,让开发者更快、更稳、更好的实现业务过程,而无需担心引擎的稳定性或异常问题等。更有效的帮助产品、供应链下的各个平台,加快产品的体验,获取更大的市场竞争力,从而提升业务整体运营效率。
实施例三
图5是本申请实施例三提供的业务引擎中业务处理的装置的结构示意图。如图5所示,所述业务引擎中业务处理的装置,包括:
标准化处理模块510,用于接收到客户端的业务请求时,对所述业务请求进行标准化处理;其中,所述标准化处理包括数据块标准化、接口标准化以及通信标准化中的至少一种;
过滤模块520,用于将标准化处理后的业务请求采用预设过滤器进行过滤,得到过滤处理结果;其中,所述过滤器包括网络过滤器和至少一个业务过滤器;
分解编号模块530,用于将所述过滤处理结果分解为至少一个任务对象,并对所述任务对象进行编号;
任务对象处理模块540,用于按照任务对象的编号,采用链式处理规则对所有的任务对象进行处理,并将得到的处理结果返回至客户端。
本申请实施例所提供的技术方案,接收到客户端的业务请求时,对所述业务请求进行标准化处理;其中,所述标准化处理包括数据块标准化、接口标准化以及通信标准化中的至少一种;将标准化处理后的业务请求采用预设过滤器进行过滤,得到过滤处理结果;其中,所述过滤器包括网络过滤器和至少一个业务过滤器;将所述过滤处理结果分解为至少一个任务对象,并对所述任务对象进行编号;按照任务对象的编号,采用链式处理规则对所有的任务对象进行处理,并将得到的处理结果返回至客户端。通过采用本申请所提供的技术方案,可以基于业务引擎的结构性建设,是业务平台具有可配置性、更新灵活以及简便业务实现过程的效果。
在上述各技术方案的基础上,可选的,所述装置还包括业务引擎配置模块,所述业务引擎配置模块,具体用于:
响应于业务引擎的配置请求,进入业务引擎配置界面;
根据接收到的配置操作结果,确定业务引擎框架;其中,所述业务引擎框架包括:标准化处理节点,过滤节点,分解编号节点以及任务对象处理节点。
在上述各技术方案的基础上,可选的,所述装置还包括任务状态变更模块,所述任务状态变更模块,具体用于:
根据任务对象的编号,对所述任务对象处理进度进行跟踪;
若跟踪到所述任务对象的处理进度发生变化,则变更任务对象的任务状态;其中,所述任务状态是对所述任务对象进行编号时预留的标记字段。
在上述各技术方案的基础上,可选的,所述任务对象处理模块,包括:
业务处理器确定单元,用于确定与任务对象的编号对应的业务处理器;
处理单元,用于通过与任务对象的编号对应的业务处理器对任务对象进行处理,得到当前处理结果后,将当前处理结果发送至与下一个与任务对象的编号相对应的业务处理器进行处理,直至所有任务对象处理完成,得到最终处理结果;
处理结果返回单元,用于将得到的最终处理结果返回至客户端。
在上述各技术方案的基础上,可选的,所述任务对象处理模块,还包括:
调节器判断单元,用于判断所述业务处理器上面是否设置有调节器;
调节器处理单元,用于若所述调节器判断单元判断为是,则根据所设置的调节器的处理规则对所属任务对象进行处理,得到调节处理结果;
调节器处理结果返回单元,用于根据所述调节器的逻辑规则,确定将调节处理结果发送至下一个与任务对象的编号相对应的业务处理器进行处理,或者作为最终处理结果。
上述产品可运行本申请任意实施例所提供的方法,具备运行方法相应的功能模块和有益效果。
实施例四
本申请实施例还提供一种包含计算机可运行指令的存储介质,所述计算机可运行指令在由计算机处理器运行时用于运行一种业务引擎中业务处理的方法,该方法包括:
接收到客户端的业务请求时,对所述业务请求进行标准化处理;其中,所述标准化处理包括数据块标准化、接口标准化以及通信标准化中的至少一种;
将标准化处理后的业务请求采用预设过滤器进行过滤,得到过滤处理结果;其中,所述过滤器包括网络过滤器和至少一个业务过滤器;
将所述过滤处理结果分解为至少一个任务对象,并对所述任务对象进行编号;
按照任务对象的编号,采用链式处理规则对所有的任务对象进行处理,并将得到的处理结果返回至客户端。
存储介质——任何的各种类型的存储器设备或存储设备。术语“存储介质”旨在包括:安装介质,例如CD-ROM、软盘或磁带装置;计算机系统存储器或随机存取存储器,诸如DRAM、DDR RAM、SRAM、EDO RAM,兰巴斯(Rambus)RAM等;非易失性存储器,诸如闪存、磁介质(例如硬盘或光存储);寄存器或其它相似类型的存储器元件等。存储介质可以还包括其它类型的存储器或其组合。另外,存储介质可以位于程序在其中被运行的计算机系统中,或者可以位于不同的第二计算机系统中,第二计算机系统通过网络(诸如因特网)连接到计算机系统。第二计算机系统可以提供程序指令给计算机用于运行。术语“存储介质”可以包括可以驻留在不同位置中(例如在通过网络连接的不同计算机系统中)的两个或更多存储介质。存储介质可以存储可由一个或多个处理器运行的程序指令(例如具体实现为计算机程序)。
当然,本申请实施例所提供的一种包含计算机可运行指令的存储介质,其计算机可运行指令不限于如上所述的业务引擎中业务处理的操作,还可以运行本申请任意实施例所提供的业务引擎中业务处理的方法中的相关操作。
实施例五
本申请实施例提供了一种电子设备,该电子设备中可集成本申请实施例提供的业务引擎中业务处理的装置。图6是本申请实施例五提供的一种电子设备的结构示意图。如图6所示,本实施例提供了一种电子设备600,其包括:一个或多个处理器620;存储装置610,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器620运行,使得所述一个或多个处理器620实现本申请实施例所提供的业务引擎中业务处理的方法,该方法包括:
获取目标用户在注册后的每一个时间周期内的活跃度指标参数,并根据活跃度指标参数确定目标用户在平台中的活跃度;
接收到客户端的业务请求时,对所述业务请求进行标准化处理;其中,所述标准化处理包括数据块标准化、接口标准化以及通信标准化中的至少一种;
将标准化处理后的业务请求采用预设过滤器进行过滤,得到过滤处理结果;其中,所述过滤器包括网络过滤器和至少一个业务过滤器;
将所述过滤处理结果分解为至少一个任务对象,并对所述任务对象进行编号;
按照任务对象的编号,采用链式处理规则对所有的任务对象进行处理,并将得到的处理结果返回至客户端。
图6显示的电子设备600仅仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。
如图6所示,该电子设备600包括处理器620、存储装置610、输入装置630和输出装置640;电子设备中处理器620的数量可以是一个或多个,图6中以一个处理器620为例;电子设备中的处理器620、存储装置610、输入装置630和输出装置640可以通过总线或其他方式连接,图6中以通过总线650连接为例。
存储装置610作为一种计算机可读存储介质,可用于存储软件程序、计算机可运行程序以及模块单元,如本申请实施例中的业务引擎中业务处理的方法对应的程序指令。
存储装置610可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据终端的使用所创建的数据等。此外,存储装置610可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储装置610可进一步包括相对于处理器620远程设置的存储器,这些远程存储器可以通过网络连接。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
输入装置630可用于接收输入的数字、字符信息或语音信息,以及产生与电子设备的用户设置以及功能控制有关的键信号输入。输出装置640可包括显示屏、扬声器等设备。
本申请实施例提供的电子设备,可以基于业务引擎的结构性建设,是业务平台具有可配置性、更新灵活以及简便业务实现过程的效果。
上述实施例中提供的业务引擎中业务处理的装置、存储介质及电子设备可运行本申请任意实施例所提供的业务引擎中业务处理的方法,具备运行该方法相应的功能模块和有益效果。未在上述实施例中详尽描述的技术细节,可参见本申请任意实施例所提供的业务引擎中业务处理的方法。
注意,上述仅为本申请的较佳实施例及所运用技术原理。本领域技术人员会理解,本申请不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本申请的保护范围。因此,虽然通过以上实施例对本申请进行了较为详细的说明,但是本申请不仅仅限于以上实施例,在不脱离本申请构思的情况下,还可以包括更多其他等效实施例,而本申请的范围由所附的权利要求范围决定。
Claims (10)
1.一种业务引擎中业务处理的方法,其特征在于,包括:
接收到客户端的业务请求时,对所述业务请求进行标准化处理;其中,所述标准化处理包括数据块标准化、接口标准化以及通信标准化中的至少一种;
将标准化处理后的业务请求采用预设过滤器进行过滤,得到过滤处理结果;其中,所述过滤器包括网络过滤器和至少一个业务过滤器;
将所述过滤处理结果分解为至少一个任务对象,并对所述任务对象进行编号;
按照任务对象的编号,采用链式处理规则对所有的任务对象进行处理,并将得到的处理结果返回至客户端。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
响应于业务引擎的配置请求,进入业务引擎配置界面;
根据接收到的配置操作结果,确定业务引擎框架;其中,所述业务引擎框架包括:标准化处理节点,过滤节点,分解编号节点以及任务对象处理节点。
3.根据权利要求1所述的方法,其特征在于,在将所述过滤处理结果分解为至少一个任务对象,并对所述任务对象进行编号之后,所述方法还包括:
根据任务对象的编号,对所述任务对象处理进度进行跟踪;
若跟踪到所述任务对象的处理进度发生变化,则变更任务对象的任务状态;其中,所述任务状态是对所述任务对象进行编号时预留的标记字段。
4.根据权利要求1所述的方法,其特征在于,按照任务对象的编号,采用链式处理规则对所有的任务对象进行处理,并将得到的处理结果返回至客户端,包括:
确定与任务对象的编号对应的业务处理器;
通过与任务对象的编号对应的业务处理器对任务对象进行处理,得到当前处理结果后,将当前处理结果发送至与下一个与任务对象的编号相对应的业务处理器进行处理,直至所有任务对象处理完成,得到最终处理结果;
将得到的最终处理结果返回至客户端。
5.根据权利要求4所述的方法,其特征在于,在确定与任务对象的编号对应的业务处理器之后,所述方法还包括:
判断所述业务处理器上面是否设置有调节器;
若是,则根据所设置的调节器的处理规则对所属任务对象进行处理,得到调节处理结果;
根据所述调节器的逻辑规则,确定将调节处理结果发送至下一个与任务对象的编号相对应的业务处理器进行处理,或者作为最终处理结果。
6.一种业务引擎中业务处理的装置,其特征在于,包括:
标准化处理模块,用于接收到客户端的业务请求时,对所述业务请求进行标准化处理;其中,所述标准化处理包括数据块标准化、接口标准化以及通信标准化中的至少一种;
过滤模块,用于将标准化处理后的业务请求采用预设过滤器进行过滤,得到过滤处理结果;其中,所述过滤器包括网络过滤器和至少一个业务过滤器;
分解编号模块,用于将所述过滤处理结果分解为至少一个任务对象,并对所述任务对象进行编号;
任务对象处理模块,用于按照任务对象的编号,采用链式处理规则对所有的任务对象进行处理,并将得到的处理结果返回至客户端。
7.根据权利要求6所述的装置,其特征在于,所述装置还包括业务引擎配置模块,所述业务引擎配置模块,具体用于:
响应于业务引擎的配置请求,进入业务引擎配置界面;
根据接收到的配置操作结果,确定业务引擎框架;其中,所述业务引擎框架包括:标准化处理节点,过滤节点,分解编号节点以及任务对象处理节点。
8.根据权利要求6所述的装置,其特征在于,所述装置还包括任务状态变更模块,所述任务状态变更模块,具体用于:
根据任务对象的编号,对所述任务对象处理进度进行跟踪;
若跟踪到所述任务对象的处理进度发生变化,则变更任务对象的任务状态;其中,所述任务状态是对所述任务对象进行编号时预留的标记字段。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-5中任一项所述的业务引擎中业务处理的方法。
10.一种电子设备,包括存储器,处理器及存储在存储器上并可在处理器运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1-5中任一项所述的业务引擎中业务处理的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911065442.3A CN110825457A (zh) | 2019-11-04 | 2019-11-04 | 业务引擎中业务处理的方法、装置、存储介质及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911065442.3A CN110825457A (zh) | 2019-11-04 | 2019-11-04 | 业务引擎中业务处理的方法、装置、存储介质及电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110825457A true CN110825457A (zh) | 2020-02-21 |
Family
ID=69552496
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911065442.3A Withdrawn CN110825457A (zh) | 2019-11-04 | 2019-11-04 | 业务引擎中业务处理的方法、装置、存储介质及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110825457A (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111382176A (zh) * | 2020-02-28 | 2020-07-07 | 中国建设银行股份有限公司 | 一种信息更新的方法及装置 |
CN112347125A (zh) * | 2020-11-16 | 2021-02-09 | 李增国 | 一种设备数据处理的方法及物联网数据处理方法 |
CN114020361A (zh) * | 2021-11-09 | 2022-02-08 | 上海浦东发展银行股份有限公司 | 一种基于过滤器的链式规则处理方法、装置及存储介质 |
CN114327678A (zh) * | 2021-12-29 | 2022-04-12 | 中电福富信息科技有限公司 | 一种支持多引擎的实时数据处理系统及方法 |
CN117611094A (zh) * | 2023-12-06 | 2024-02-27 | 阿帕数字科技有限公司 | 基于业务流程编排实现供应链体系设计方法及系统 |
CN117611094B (zh) * | 2023-12-06 | 2024-06-07 | 阿帕数字科技有限公司 | 基于业务流程编排实现供应链体系设计方法及系统 |
-
2019
- 2019-11-04 CN CN201911065442.3A patent/CN110825457A/zh not_active Withdrawn
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111382176A (zh) * | 2020-02-28 | 2020-07-07 | 中国建设银行股份有限公司 | 一种信息更新的方法及装置 |
CN112347125A (zh) * | 2020-11-16 | 2021-02-09 | 李增国 | 一种设备数据处理的方法及物联网数据处理方法 |
CN114020361A (zh) * | 2021-11-09 | 2022-02-08 | 上海浦东发展银行股份有限公司 | 一种基于过滤器的链式规则处理方法、装置及存储介质 |
CN114327678A (zh) * | 2021-12-29 | 2022-04-12 | 中电福富信息科技有限公司 | 一种支持多引擎的实时数据处理系统及方法 |
CN114327678B (zh) * | 2021-12-29 | 2023-05-12 | 中电福富信息科技有限公司 | 一种支持多引擎的实时数据处理系统及方法 |
CN117611094A (zh) * | 2023-12-06 | 2024-02-27 | 阿帕数字科技有限公司 | 基于业务流程编排实现供应链体系设计方法及系统 |
CN117611094B (zh) * | 2023-12-06 | 2024-06-07 | 阿帕数字科技有限公司 | 基于业务流程编排实现供应链体系设计方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10489278B2 (en) | Method and system for implementing an automation software testing and packaging framework with entitlements | |
CN110825457A (zh) | 业务引擎中业务处理的方法、装置、存储介质及电子设备 | |
Martínez et al. | A big data-centric architecture metamodel for Industry 4.0 | |
CA2777443C (en) | Automated enterprise software development | |
CN111930355B (zh) | 一种web后端开发框架及其构建方法 | |
US11288608B2 (en) | Systems and method for a project management portal | |
US10147066B2 (en) | Business process framework | |
US20070027934A1 (en) | Software release validation | |
US9170821B1 (en) | Automating workflow validation | |
CN111930354B (zh) | 一种用于软件开发的框架组件系统及其构建方法 | |
CN101753619B (zh) | 用于扩展服务模型的方法和系统 | |
CN102508773B (zh) | 基于ie内核的web业务系统仿真监控方法及装置 | |
US11803553B2 (en) | Providing triggers based on one-to-many or many-to-one relationships in a system of record | |
CN115860451A (zh) | 一种流程运行方法、装置、电子设备及存储介质 | |
Popescu et al. | A formalized, taxonomy-driven approach to cross-layer application adaptation | |
US20120240103A1 (en) | Method and system for implementing self-configurable software components | |
CN112130823A (zh) | 一种平台开发方法、装置、计算机设备及存储介质 | |
CN110908644A (zh) | 状态节点的配置方法、装置、计算机设备和存储介质 | |
CN111145004B (zh) | 基于可编辑工作流的智能财务稽核平台 | |
CN115048158A (zh) | 流程编排及调用方法及其系统、计算机设备 | |
Engels et al. | Service-oriented enterprise architectures: Evolution of concepts and methods | |
CN112418796A (zh) | 子流程节点激活方法、装置、电子设备及存储介质 | |
Tariq et al. | Design and Implementation of Human Resource Information Systems Based on MVC: A Case Study Vocational Education in Iraq | |
CN115222345A (zh) | 一种审核作业方法及装置 | |
JP2007242051A (ja) | ビジネスロジックプログラムを実装・実行するための装置 |
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 | ||
WW01 | Invention patent application withdrawn after publication | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20200221 |