CN112596871A - 业务处理方法和装置 - Google Patents

业务处理方法和装置 Download PDF

Info

Publication number
CN112596871A
CN112596871A CN202011482749.6A CN202011482749A CN112596871A CN 112596871 A CN112596871 A CN 112596871A CN 202011482749 A CN202011482749 A CN 202011482749A CN 112596871 A CN112596871 A CN 112596871A
Authority
CN
China
Prior art keywords
atomic
task
target service
execution
service
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
CN202011482749.6A
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.)
China Construction Bank Corp
Original Assignee
China Construction Bank Corp
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 China Construction Bank Corp filed Critical China Construction Bank Corp
Priority to CN202011482749.6A priority Critical patent/CN112596871A/zh
Publication of CN112596871A publication Critical patent/CN112596871A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q40/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/02Banking, e.g. interest calculation or account maintenance

Abstract

本申请提供了一种业务处理方法和装置,其中,该方法包括:接收前端设备发送的业务请求数据,其中,业务请求数据中包括目标业务的信息;根据目标业务的信息,将目标业务拆分成多个原子任务;基于目标业务的业务逻辑和多个原子任务,生成目标业务对应的产品组成表;基于产品组成表调度执行多个原子任务,以实现目标业务。上述方案可以将业务逻辑和技术进行分离,使得可以通过配置方式,快速支持多产品组合,响应业务创新,同时通过功能的原子化拆分组合,提高模块的可复用性,降低了重复开发,节约了人力资源。

Description

业务处理方法和装置
技术领域
本申请涉及数据处理技术领域,特别涉及一种业务处理方法和装置。
背景技术
目前,银行系统的产品上线流程繁杂,且需要多组件的协同开发,使业务创新的反应滞后。另外,目前大部分业务逻辑嵌入到代码开发中,耦合性强,造成了大量的重复开发,浪费人力资源。
针对上述问题,目前尚未提出有效的解决方案。
发明内容
本申请实施例提供了一种业务处理方法和装置,以解决现有技术中产品开发效率低的问题。
本申请实施例提供了一种业务处理方法,包括:接收前端设备发送的业务请求数据,其中,业务请求数据中包括目标业务的信息;根据目标业务的信息,将目标业务拆分成多个原子任务;基于目标业务的业务逻辑和多个原子任务,生成目标业务对应的产品组成表;基于产品组成表调度执行多个原子任务,以实现目标业务。
在一个实施例中,在基于产品组成表执行多个原子任务,以实现目标业务之后,还包括:将目标业务的执行结果返回至前端设备。
在一个实施例中,根据目标业务的信息,将目标业务拆分成多个原子任务,包括:根据目标业务的信息,按照预设维度将目标业务拆分成多个原子任务;其中,预设维度包括以下至少之一:客户维度、产品维度和功能维度。
在一个实施例中,基于目标业务的业务逻辑和多个原子任务,生成目标业务对应的产品组成表,包括:基于目标业务的业务逻辑,确定多个原子任务中各原子任务的优先级以及原子任务之间的依赖关系;从产品池数据中读取多个原子任务中各原子任务对应的原子功能数据;将读取到的多个原子功能数据按照各原子任务的优先级以及原子任务之间的依赖关系进行组合,并记录到目标业务对应的产品组成表中。
在一个实施例中,在根据目标业务的信息,按照预设维度将目标业务拆分成多个原子任务之后,还包括:将多个原子任务记录到交易调度表和任务执行计划表中,其中,交易调度表中记载有多个原子任务中各原子任务的调度状态,任务执行计划表中记载有多个原子任务中各原子任务的执行状态;基于产品组成表调度执行多个原子任务,包括:基于产品组成表、交易调度表和任务执行表调度执行多个原子任务。
在一个实施例中,基于产品组成表、交易调度表和任务执行表调度执行多个原子任务,包括:从交易调度表获取当前原子任务的调度状态;在当前原子任务的调度状态为待处理的情况下,判断当前原子任务的前置任务是否已处理成功;在当前原子任务不存在前置任务或当前原子任务的前置任务处理成功的情况下,将当前原子任务的调度状态更新为处理中;在当前原子任务的前置任务未执行或执行失败的情况下,结束当前流程。
在一个实施例中,基于产品组成表、交易调度表和任务执行表调度执行多个原子任务,包括:读取执行计划表中执行状态为待处理的目标原子任务;将目标原子任务的执行状态更新为处理中;执行目标原子任务;根据执行结果更新执行计划表中目标原子任务的执行状态。
本申请实施例还提供了一种业务处理装置,包括:接收模块,用于接收前端设备发送的业务请求数据,其中,业务请求数据中包括目标业务的信息;拆分模块,用于根据目标业务的信息,将目标业务拆分成多个原子任务;生成模块,用于基于目标业务的业务逻辑和多个原子任务,生成目标业务对应的产品组成表;执行模块,用于基于产品组成表调度执行多个原子任务,以实现目标业务。
本申请实施例还提供一种计算机设备,包括处理器以及用于存储处理器可执行指令的存储器,所述处理器执行所述指令时实现上述任意实施例中所述的业务处理方法的步骤。
本申请实施例还提供一种计算机可读存储介质,其上存储有计算机指令,所述指令被执行时实现上述任意实施例中所述的业务处理方法的步骤。
在本申请实施例中,提供了一种业务处理方法,接收前端设备发送的业务请求数据,根据业务请求中的目标业务的信息,将目标业务拆分成多个原子任务,基于目标业务的业务逻辑和多个原子任务,生成目标业务对应的产品组成表,基于产品组成表调度执行多个原子任务,以实现目标业务。上述方案中,首先将目标业务拆分为多个原子任务,之后再结合多个原子任务和业务逻辑生成目标业务对应的产品组成表,可以将业务逻辑和技术进行分离,使得可以通过配置方式,快速支持多产品组合,响应业务创新,同时通过功能的原子化拆分组合,提高模块的可复用性,降低了重复开发,节约了人力资源。通过上述方案解决了现有的产品开发效率低的技术问题,达到了快速支持多产品组合、提高模块的可复用性、降低了重复开发以及节约了人力资源的技术效果。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,并不构成对本申请的限定。在附图中:
图1示出了本申请一实施例中业务处理方法的流程图;
图2示出了本申请一实施例中的业务处理方法中的任务生成的流程图;
图3示出了本申请一实施例中的业务处理方法中的任务调度的流程图;
图4示出了本申请一实施例中的业务处理方法中的调度配置的流程图;
图5示出了本申请一实施例中的业务处理方法中的任务执行的流程图;
图6示出了本申请一实施例中的业务处理方法中的执行反馈的流程图;
图7示出了本申请一实施例中的业务处理装置的示意图;
图8示出了本申请一实施例中的计算机设备的示意图。
具体实施方式
下面将参考若干示例性实施方式来描述本申请的原理和精神。应当理解,给出这些实施方式仅仅是为了使本领域技术人员能够更好地理解进而实现本申请,而并非以任何方式限制本申请的范围。相反,提供这些实施方式是为了使本申请公开更加透彻和完整,并且能够将本公开的范围完整地传达给本领域的技术人员。
本领域的技术人员知道,本申请的实施方式可以实现为一种系统、装置设备、方法或计算机程序产品。因此,本申请公开可以具体实现为以下形式,即:完全的硬件、完全的软件(包括固件、驻留软件、微代码等),或者硬件和软件结合的形式。
在本申请的一个场景示例中,服务器可以接收前端设备发送的业务请求数据。其中,业务请求数据可以包括一个或多个客户的一笔或多笔交易请求。其中,业务请求数据中包括目标业务的信息。服务器可以根据目标业务的信息,将目标业务拆分成多个原子任务。之后,服务器可以基于目标业务的业务逻辑和拆分得到的多个原子任务,生成目标业务对应的产品组成表,以基于产品组成表调度执行多个原子任务,从而实现目标业务。
在一个实施方式中,在基于产品组成表执行多个原子任务之后,服务器可以将目标业务的执行结果返回至前端设备。
在一个实施方式中,服务器可以根据目标业务的信息,按照预设维度将目标业务拆分成多个原子任务。其中,预设维度可以包括以下至少之一:客户维度、产品维度和功能维度。例如,目标业务为客户A利用定期存款购买基金以及客户B利用定期存款购买国债。首先,可以根据目标业务生成两个子任务。其中,子任务1为客户A利用定期存款购买基金,子任务2为客户B利用定期存款购买国债。然后,将子任务1拆分为解冻原子任务和购买基金原子任务。将子任务2拆分为解冻原子任务和购买国债原子任务。
在一个实施方式中,服务器可以基于目标业务的业务逻辑,确定多个原子任务中各原子任务的优先级以及原子任务之间的依赖关系。服务器可以从产品池数据中读取多个原子任务中各原子任务对应的原子功能数据。其中,原子功能数据即用于实现原子任务的程序数据。服务器可以将读取到的多个原子功能数据按照各原子任务的优先级以及原子任务之间的依赖关系进行组合,并记录到目标业务对应的产品组成表中。
在一个实施方式中,在按照预设维度将目标业务拆分成多个原子任务之后,服务器可以将多个原子任务记录到交易调度表和任务执行计划表中,其中,交易调度表中记载有多个原子任务中各原子任务的调度状态,任务执行计划表中记载有多个原子任务中各原子任务的执行状态。其中,交易调度表中的各原子任务的调度状态可以设置为置为等待状态,等待调度。执行计划表中各原子任务的执行状态可以根据其有无前置任务记录其状态,若无前置任务,则将记录状态置为待处理,等待执行,若有前置任务,则将记录状态记录为等待。服务器可以基于产品组成表、交易调度表和任务执行表调度执行多个原子任务。
在一个实施方式中,服务器可以从交易调度表获取当前原子任务的调度状态;在当前原子任务的调度状态为待处理的情况下,判断当前原子任务的前置任务是否已处理成功;在当前原子任务不存在前置任务或当前原子任务的前置任务处理成功的情况下,将当前原子任务的调度状态更新为处理中;在当前原子任务的前置任务未执行或执行失败的情况下,结束当前流程。
在一个实施方式中,服务器可以读取执行计划表中执行状态为待处理的目标原子任务;将目标原子任务的执行状态更新为处理中;执行目标原子任务;根据执行结果更新执行计划表中目标原子任务的执行状态。
本申请实施例提供了一种业务处理方法。图1示出了本申请一实施例中业务处理方法的流程图。虽然本申请提供了如下述实施例或附图所示的方法操作步骤或装置结构,但基于常规或者无需创造性的劳动在所述方法或装置中可以包括更多或者更少的操作步骤或模块单元。在逻辑性上不存在必要因果关系的步骤或结构中,这些步骤的执行顺序或装置的模块结构不限于本申请实施例描述及附图所示的执行顺序或模块结构。所述的方法或模块结构的在实际中的装置或终端产品应用时,可以按照实施例或者附图所示的方法或模块结构连接进行顺序执行或者并行执行(例如并行处理器或者多线程处理的环境,甚至分布式处理环境)。
具体地,如图1所示,本申请一种实施例提供的业务处理方法可以包括以下步骤。
步骤S101,接收前端设备发送的业务请求数据。
步骤S102,根据目标业务的信息,将目标业务拆分成多个原子任务。
具体地,业务请求数据中可以包括目标业务的信息。可以根据业务请求数据中的目标业务的信息将目标业务拆分为多个原子任务。示例性的,目标业务可以为客户A利用定期存款购买基金债。可以将目标业务分成两个原子任务。原子任务1为解冻任务,原子任务2为购买基金任务。
步骤S103,基于目标业务的业务逻辑和多个原子任务,生成目标业务对应的产品组成表。
步骤S104,基于产品组成表调度执行多个原子任务,以实现目标业务。
具体地,服务器可以根据目标业务的业务逻辑对多个原子任务进行配置,并记录到产品组成表中,得到目标业务对应的产品组成表。之后,服务器可以基于产品组成表调度执行多个原子任务,从而实现目标业务。
上述实施例中的方法,首先将目标业务拆分为多个原子任务,之后再结合多个原子任务和业务逻辑生成目标业务对应的产品组成表,可以将业务逻辑和技术进行分离,使得可以通过配置方式,快速支持多产品组合,响应业务创新,同时通过功能的原子化拆分组合,提高模块的可复用性,降低了重复开发,节约了人力资源。通过上述方案解决了现有的产品开发效率低的技术问题,达到了快速支持多产品组合、提高模块的可复用性、降低了重复开发以及节约了人力资源的技术效果。
在本申请一些实施例中,在基于产品组成表执行多个原子任务,以实现目标业务之后,还包括:将目标业务的执行结果返回至前端设备。通过上述方式,可以使用户及时获知业务执行结果,可以提高用户体验。
在本申请一些实施例中,根据目标业务的信息,将目标业务拆分成多个原子任务,包括:根据目标业务的信息,按照预设维度将目标业务拆分成多个原子任务。
具体地,预设维度包括以下至少之一:客户维度、产品维度和功能维度。服务器可以根据目标业务的信息,按照预设维度将目标业务拆分成多个原子任务。示例性地,目标业务为客户A利用定期存款购买基金和股票以及客户B利用定期存款购买国债。首先,可以按客户维度将目标业务拆分为两个子任务:子任务1和子任务2。其中,子任务1为客户A利用定期存款购买基金和股票,子任务2为客户B利用定期存款购买国债。然后,将子任务1按产品维度拆分为两个子任务:子任务3和子任务4。子任务3为客户A利用定期存款购买基金,子任务4为客户A利用定期存款购买股票。最后,可以按照功能维度将子任务3拆分为解冻原子任务和购买基金原子任务,将子任务4拆分为解冻原子任务和购买股票原子任务。可以按照功能维度将子任务2拆分为解冻原子任务和购买国债原子任务。通过按照预设维度对目标业务进行拆分,可以得到多个原子任务。
在本申请一些实施例中,基于目标业务的业务逻辑和多个原子任务,生成目标业务对应的产品组成表,包括:基于目标业务的业务逻辑,确定多个原子任务中各原子任务的优先级以及原子任务之间的依赖关系;从产品池数据中读取多个原子任务中各原子任务对应的原子功能数据;将读取到的多个原子功能数据按照各原子任务的优先级以及原子任务之间的依赖关系进行组合,并记录到目标业务对应的产品组成表中。
具体地,服务器可以基于目标业务的业务逻辑,确定多个原子任务中各原子任务的优先级以及原子任务之间的依赖关系。例如,若原子任务包括解冻任务和购买理财任务,则购买理财任务依赖于解冻任务,只有在解冻任务执行成功的情况下,才可以执行购买理财的任务。服务器可以从产品池数据库中读取多个原子任务中各原子任务对应的原子功能数据。其中,产品池数据库中可以包括实现各种原子任务的原子功能数据。在将目标业务拆分成多个原子任务之后,可以从产品池数据库中获取目标业务对应的各原子任务对应的原子功能数据。服务器可以将读取到的多个原子功能数据按照各原子任务的优先级以及原子任务之间的依赖关系进行组合,并将其记录到目标业务对应的产品组成表中。通过上述方式,在开发人员开发出各种原子任务之后,可以通过业务的原子化拆分及组合,实现组合产品的业务,提高模块的可复用性,降低了重复开发,节约了人力资源。
在本申请一些实施例中,在根据目标业务的信息,按照预设维度将目标业务拆分成多个原子任务之后,还包括:将多个原子任务记录到交易调度表和任务执行计划表中,其中,交易调度表中记载有多个原子任务中各原子任务的调度状态,任务执行计划表中记载有多个原子任务中各原子任务的执行状态;基于产品组成表调度执行多个原子任务,包括:基于产品组成表、交易调度表和任务执行表调度执行多个原子任务。
具体地,交易调度表中的各原子任务的调度状态可以设置为置为等待状态,等待调度。执行计划表中各原子任务的执行状态可以根据其有无前置任务记录其状态,若无前置任务,则将记录状态置为待处理,等待执行,若有前置任务,则将记录状态记录为等待。服务器可以基于产品组成表、交易调度表和任务执行表调度执行多个原子任务。
在本申请一些实施例中,基于产品组成表、交易调度表和任务执行表调度执行多个原子任务,包括:从交易调度表获取当前原子任务的调度状态;在当前原子任务的调度状态为待处理的情况下,判断当前原子任务的前置任务是否已处理成功;在当前原子任务不存在前置任务或当前原子任务的前置任务处理成功的情况下,将当前原子任务的调度状态更新为处理中;在当前原子任务的前置任务未执行或执行失败的情况下,结束当前流程。
具体地,在执行原子任务时,要进行任务调度。任务调度是任务执行的总控,根据调度配置,唤起待执行的任务,根据任务的调度状态,分情况进行处理。若调度状态为待处理,则判断当前原子任务的所有前置任务是否已全部处理成功,若无前置或前置任务全部处理成功,则将当前原子任务在交易调度表的调度状态更新为处理中,并将当前原子任务的执行计划表中的执行状态更新为待处理,等待计划执行;若有前置任务未执行或执行失败,则结束当前流程。
在本申请一些实施例中,对于调度状态为处理中的调度任务,若交易调度表中的执行计划状态为等待,表示当前执行计划还未执行,则结束当前流程;若执行计划状态为成功或者失败,则表明当前计划已经执行完毕,将当前调度任务置为完成,并查看是否有后置任务。根据有无后置任务进行分化处理。若无后置任务,判断是否当前组合产品的所有执行计划都已执行完毕,若执行完毕,则更新对应的申请表状态为处理完成,等待执行反馈作业将结果通知业务组件,若未执行完毕,则结束当前流程。若有后置任务且当前计划全部执行成功,则将后置调度状态置为待处理,等待调度处理,若有后置任务且当前计划执行失败,则将所有后置调度任务均置为作废状态,不再执行。
在本申请一些实施例中,基于产品组成表、交易调度表和任务执行表调度执行多个原子任务,包括:读取执行计划表中执行状态为待处理的目标原子任务;将目标原子任务的执行状态更新为处理中;执行目标原子任务;根据执行结果更新执行计划表中目标原子任务的执行状态。
具体地,服务器可以读取执行计划表中执行状态为待处理的目标原子任务,并将目标原子任务的执行状态更新为处理中。可以通过外呼执行目标原子任务,并根据执行结果更新执行计划表中的目标原子任务的执行状态。例如,若执行成功,则将目标原子任务的执行状态更新为成功,若执行失败,则将目标原子任务的执行状态更新为失败。通过上述方式,可以执行多个原子任务,从而实现目标业务。
下面结合一个具体实施例对上述方法进行说明,然而,值得注意的是,该具体实施例仅是为了更好地说明本申请,并不构成对本申请的不当限定。
在本具体实施例中,业务处理方法可以包括以下五个步骤。
步骤1,服务器接收前端设备发送的业务请求数据。
步骤2,服务器记录业务请求数据到申请表,并将数据状态置为待处理,任务生成批量作业,通过扫描申请表,将待处理数据按照客户+产品+功能的维度进行拆分,并记录到交易明细表、执行计划表和调度表中,交易调度表中相关记录置为等待状态,等待调度,执行计划表中相关记录根据其有无前置任务记录其状态,若无前置任务,则将记录状态置为待处理,等待执行,若有前置任务,则将记录状态记录为等待。请参考图2,示出了本申请一实施例中的业务处理方法中的任务生成的流程图。如图2所示,可以读取交易申请表中的待处理数据,并将状态更新为处理中。可以关联交易申请表和产品交易类型表,记录交易申请明细表,并将处理状态更新为处理中。记录交易调度表,将处理状态更新为等待。可以确定是否有前置任务。若无前置任务,则将记录状态置为待处理,等待执行,若有前置任务,则将记录状态记录为等待。
步骤3,任务调度,请参考图3,示出了本申请一实施例中的业务处理方法中的任务调度的流程图。具体地,如图3所示,可以根据任务的调度状态,分情况进行处理。若调度状态为待处理,则判断当前任务的所有前置任务是否已全部处理成功。若无前置或前置任务全部处理成功,则将当前调度状态更新为处理中,并将当前执行计划更新为待处理,等待计划执行。若有前置任务未执行或执行失败,则结束当前流程。对于处理中的调度任务,若调度表中的执行计划状态为等待,表示当前执行计划还未执行,则结束当前流程;若执行计划状态为成功或者失败,则表明当前计划已经执行完毕,将当前调度任务置为完成,并查看是否有后置任务,根据有无后置任务进行分化处理。若无后置任务,判断是否当前组合产品的所有执行计划都已执行完毕,若执行完毕,则更新对应的申请表状态为处理完成,等待执行反馈作业将结果通知业务组件,若未执行完毕,则结束当前流程。若有后置任务且当前计划全部执行成功,则将后置调度状态置为待处理,等待调度处理,若有后置任务且当前计划执行失败,则将所有后置调度任务均置为作废状态,不再执行。
步骤4,服务器可以配置原子任务以及任务的优先级。通过对业务流程进行分析,将组合产品按功能做原子化拆分,并从产品池中获取对应的原子功能,将拆分的原子功能按照配置的优先级和各功能之间的依赖关系进行重新组合,记录到产品组成表中,后续调度任务将根据产品组成表中的规则进行顺序调度。请参考图4,示出了本申请一实施例中的业务处理方法中的调度配置的流程图。具体地,如图4所示,通过对业务流程进行分析,将组合产品按功能做原子化拆分,并从产品池中获取对应的原子功能,将拆分的原子功能按照配置的优先级和各功能之间的依赖关系进行重新组合,记录到产品组成表中,调度任务将根据产品组成表中的规则进行顺序调度。
步骤5,服务器可以任务执行批量作业通过扫描执行计划表,读取待处理数据,通过配置交易码执行外呼交易,并将结果更新入执行计划表和调度表。请参考图5,示出了本申请一实施例中的业务处理方法中的任务执行的流程图。具体地,如图5所示,服务器可以读取执行计划表中的待处理数据,并更新执行计划表状态为处理中。服务器可以根据配置交易码执行外呼,并更新执行计划表的执行状态为成功/失败。服务器可以根据内部流水号更新交易调度表中执行状态为成功/失败,并记录业务流水表。
步骤6,执行反馈。请参考图6,示出了本申请一实施例中的业务处理方法中的执行反馈的流程图。如图6所示,批量作业通过扫描交易申请表,将处理状态为完成的业务结果通过外呼交易通知对应应用组件,由应用组件根据业务规则对结果做相应处理。
上述实施例中的方法,通过抽取整个产品组合的业务场景,将业务流程进行原子化拆分,通过可配置的方式,将拆分后的原子功能重新按依赖关系和优先级顺序进行任务调度执行,以达到快速响应上线的目的。上述方案在技术上实现了多产品的灵活配置,同时可支持多产品间的依赖关系配置,使业务创新产品的上线更加快速便捷和灵活。此外,上述方案通过将业务逻辑流程进行原子化拆分,提高了功能模块的复用程度,减少了重复的代码开发,大大降低了开发成本和人力成本。
基于同一发明构思,本申请实施例中还提供了一种业务处理装置,如下面的实施例所述。由于业务处理装置解决问题的原理与业务处理方法相似,因此业务处理装置的实施可以参见业务处理方法的实施,重复之处不再赘述。以下所使用的,术语“单元”或者“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。图7是本申请实施例的业务处理装置的一种结构框图,如图7所示,包括:接收模块701、拆分模块702、生成模块703和执行模块704,下面对该结构进行说明。
接收模块701用于接收前端设备发送的业务请求数据,其中,业务请求数据中包括目标业务的信息。
拆分模块702用于根据目标业务的信息,将目标业务拆分成多个原子任务。
生成模块703用于基于目标业务的业务逻辑和多个原子任务,生成目标业务对应的产品组成表。
执行模块704用于基于产品组成表调度执行多个原子任务,以实现目标业务。
在本申请一些实施例中,该装置还可以包括返回模块,返回模块可以用于:将目标业务的执行结果返回至前端设备。
在本申请一些实施例中,拆分模块可以用于:根据目标业务的信息,按照预设维度将目标业务拆分成多个原子任务;其中,预设维度可以包括以下至少之一:客户维度、产品维度和功能维度。
在本申请一些实施例中,生成模块可以具体用于:基于目标业务的业务逻辑,确定多个原子任务中各原子任务的优先级以及原子任务之间的依赖关系;从产品池数据中读取多个原子任务中各原子任务对应的原子功能数据;将读取到的多个原子功能数据按照各原子任务的优先级以及原子任务之间的依赖关系进行组合,并记录到目标业务对应的产品组成表中。
在本申请一些实施例中,在根据目标业务的信息,按照预设维度将目标业务拆分成多个原子任务之后,还可以包括:将多个原子任务记录到交易调度表和任务执行计划表中,其中,交易调度表中记载有多个原子任务中各原子任务的调度状态,任务执行计划表中记载有多个原子任务中各原子任务的执行状态;基于产品组成表调度执行多个原子任务,可以包括:基于产品组成表、交易调度表和任务执行表调度执行多个原子任务。
在本申请一些实施例中,基于产品组成表、交易调度表和任务执行表调度执行多个原子任务,可以包括:从交易调度表获取当前原子任务的调度状态;在当前原子任务的调度状态为待处理的情况下,判断当前原子任务的前置任务是否已处理成功;在当前原子任务不存在前置任务或当前原子任务的前置任务处理成功的情况下,将当前原子任务的调度状态更新为处理中;在当前原子任务的前置任务未执行或执行失败的情况下,结束当前流程。
在一个实施例中,基于产品组成表、交易调度表和任务执行表调度执行多个原子任务,可以包括:读取执行计划表中执行状态为待处理的目标原子任务;将目标原子任务的执行状态更新为处理中;执行目标原子任务;根据执行结果更新执行计划表中目标原子任务的执行状态。
从以上的描述中,可以看出,本申请实施例实现了如下技术效果:首先将目标业务拆分为多个原子任务,之后再结合多个原子任务和业务逻辑生成目标业务对应的产品组成表,可以将业务逻辑和技术进行分离,使得可以通过配置方式,快速支持多产品组合,响应业务创新,同时通过功能的原子化拆分组合,提高模块的可复用性,降低了重复开发,节约了人力资源。通过上述方案解决了现有的产品开发效率低的技术问题,达到了快速支持多产品组合、提高模块的可复用性、降低了重复开发以及节约了人力资源的技术效果。
本申请实施方式还提供了一种计算机设备,具体可以参阅图8所示的基于本申请实施例提供的业务处理方法的计算机设备组成结构示意图,所述计算机设备具体可以包括输入设备81、处理器82、存储器83。其中,所述存储器83用于存储处理器可执行指令。所述处理器82执行所述指令时实现上述任意实施例中所述的业务处理方法的步骤。
在本实施方式中,所述输入设备具体可以是用户和计算机系统之间进行信息交换的主要装置之一。所述输入设备可以包括键盘、鼠标、摄像头、扫描仪、光笔、手写输入板、语音输入装置等;输入设备用于把原始数据和处理这些数的程序输入到计算机中。所述输入设备还可以获取接收其他模块、单元、设备传输过来的数据。所述处理器可以按任何适当的方式实现。例如,处理器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(Application Specific Integrated Circuit,ASIC)、可编程逻辑控制器和嵌入微控制器的形式等等。所述存储器具体可以是现代信息技术中用于保存信息的记忆设备。所述存储器可以包括多个层次,在数字系统中,只要能保存二进制数据的都可以是存储器;在集成电路中,一个没有实物形式的具有存储功能的电路也叫存储器,如RAM、FIFO等;在系统中,具有实物形式的存储设备也叫存储器,如内存条、TF卡等。
在本实施方式中,该计算机设备具体实现的功能和效果,可以与其它实施方式对照解释,在此不再赘述。
本申请实施方式中还提供了一种基于业务处理方法的计算机存储介质,所述计算机存储介质存储有计算机程序指令,在所述计算机程序指令被执行时实现上述任意实施例中所述业务处理方法的步骤。
在本实施方式中,上述存储介质包括但不限于随机存取存储器(Random AccessMemory,RAM)、只读存储器(Read-Only Memory,ROM)、缓存(Cache)、硬盘(Hard DiskDrive,HDD)或者存储卡(Memory Card)。所述存储器可以用于存储计算机程序指令。网络通信单元可以是依照通信协议规定的标准设置的,用于进行网络连接通信的接口。
在本实施方式中,该计算机存储介质存储的程序指令具体实现的功能和效果,可以与其它实施方式对照解释,在此不再赘述。
显然,本领域的技术人员应该明白,上述的本申请实施例的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本申请实施例不限制于任何特定的硬件和软件结合。
应该理解,以上描述是为了进行图示说明而不是为了进行限制。通过阅读上述描述,在所提供的示例之外的许多实施方式和许多应用对本领域技术人员来说都将是显而易见的。因此,本申请的范围不应该参照上述描述来确定,而是应该参照前述权利要求以及这些权利要求所拥有的等价物的全部范围来确定。
以上所述仅为本申请的优选实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请实施例可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

Claims (10)

1.一种业务处理方法,其特征在于,包括:
接收前端设备发送的业务请求数据,其中,所述业务请求数据中包括目标业务的信息;
根据所述目标业务的信息,将所述目标业务拆分成多个原子任务;
基于所述目标业务的业务逻辑和所述多个原子任务,生成所述目标业务对应的产品组成表;
基于所述产品组成表调度执行所述多个原子任务,以实现所述目标业务。
2.根据权利要求1所述的方法,其特征在于,在基于所述产品组成表执行所述多个原子任务,以实现所述目标业务之后,还包括:
将所述目标业务的执行结果返回至所述前端设备。
3.根据权利要求1所述的方法,其特征在于,根据所述目标业务的信息,将所述目标业务拆分成多个原子任务,包括:
根据所述目标业务的信息,按照预设维度将所述目标业务拆分成多个原子任务;
其中,所述预设维度包括以下至少之一:客户维度、产品维度和功能维度。
4.根据权利要求1所述的方法,其特征在于,基于所述目标业务的业务逻辑和所述多个原子任务,生成所述目标业务对应的产品组成表,包括:
基于所述目标业务的业务逻辑,确定所述多个原子任务中各原子任务的优先级以及原子任务之间的依赖关系;
从产品池数据中读取所述多个原子任务中各原子任务对应的原子功能数据;
将读取到的多个原子功能数据按照所述各原子任务的优先级以及原子任务之间的依赖关系进行组合,并记录到所述目标业务对应的产品组成表中。
5.根据权利要求3所述的方法,其特征在于,在根据所述目标业务的信息,按照预设维度将所述目标业务拆分成多个原子任务之后,还包括:
将所述多个原子任务记录到交易调度表和任务执行计划表中,其中,所述交易调度表中记载有所述多个原子任务中各原子任务的调度状态,所述任务执行计划表中记载有所述多个原子任务中各原子任务的执行状态;
基于所述产品组成表调度执行所述多个原子任务,包括:
基于所述产品组成表、所述交易调度表和所述任务执行表调度执行所述多个原子任务。
6.根据权利要求5所述的方法,其特征在于,基于所述产品组成表、所述交易调度表和所述任务执行表调度执行所述多个原子任务,包括:
从所述交易调度表获取当前原子任务的调度状态;
在当前原子任务的调度状态为待处理的情况下,判断当前原子任务的前置任务是否已处理成功;
在当前原子任务不存在前置任务或当前原子任务的前置任务处理成功的情况下,将所述当前原子任务的调度状态更新为处理中;
在当前原子任务的前置任务未执行或执行失败的情况下,结束当前流程。
7.根据权利要求5所述的方法,其特征在于,基于所述产品组成表、所述交易调度表和所述任务执行表调度执行所述多个原子任务,包括:
读取所述执行计划表中执行状态为待处理的目标原子任务;
将所述目标原子任务的执行状态更新为处理中;
执行所述目标原子任务;
根据执行结果更新所述执行计划表中所述目标原子任务的执行状态。
8.一种业务处理装置,其特征在于,包括:
接收模块,用于接收前端设备发送的业务请求数据,其中,所述业务请求数据中包括目标业务的信息;
拆分模块,用于根据所述目标业务的信息,将所述目标业务拆分成多个原子任务;
生成模块,用于基于所述目标业务的业务逻辑和所述多个原子任务,生成所述目标业务对应的产品组成表;
执行模块,用于基于所述产品组成表调度执行所述多个原子任务,以实现所述目标业务。
9.一种计算机设备,其特征在于,包括处理器以及用于存储处理器可执行指令的存储器,所述处理器执行所述指令时实现权利要求1至7中任一项所述方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机指令,其特征在于,所述指令被执行时实现权利要求1至7中任一项所述方法的步骤。
CN202011482749.6A 2020-12-16 2020-12-16 业务处理方法和装置 Pending CN112596871A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011482749.6A CN112596871A (zh) 2020-12-16 2020-12-16 业务处理方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011482749.6A CN112596871A (zh) 2020-12-16 2020-12-16 业务处理方法和装置

Publications (1)

Publication Number Publication Date
CN112596871A true CN112596871A (zh) 2021-04-02

Family

ID=75196050

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011482749.6A Pending CN112596871A (zh) 2020-12-16 2020-12-16 业务处理方法和装置

Country Status (1)

Country Link
CN (1) CN112596871A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113110963A (zh) * 2021-04-28 2021-07-13 北京京东拓先科技有限公司 业务处理方法、业务处理装置、电子设备及可读存储介质
CN114647464A (zh) * 2022-05-19 2022-06-21 恒生电子股份有限公司 应用的并行启动处理方法、装置及电子设备

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113110963A (zh) * 2021-04-28 2021-07-13 北京京东拓先科技有限公司 业务处理方法、业务处理装置、电子设备及可读存储介质
CN114647464A (zh) * 2022-05-19 2022-06-21 恒生电子股份有限公司 应用的并行启动处理方法、装置及电子设备

Similar Documents

Publication Publication Date Title
US8595732B2 (en) Reducing the response time of flexible highly data parallel task by assigning task sets using dynamic combined longest processing time scheme
CN109862101B (zh) 跨平台应用启动方法、装置、计算机设备和存储介质
CN112596871A (zh) 业务处理方法和装置
CN111399897A (zh) 基于kubernetes的应用发布方法以及系统
US8051427B2 (en) Method of establishing a logical state of an instance using non-deterministic operation results stored in a result log
JP4536833B2 (ja) 金融情報処理システム
CN113157710B (zh) 区块链数据并行写入方法、装置、计算机设备及存储介质
CN109426550A (zh) 资源的调度方法及设备
CN110362394B (zh) 任务处理方法及装置、存储介质、电子装置
CN111090532B (zh) 应用服务的调用方法、其装置、电子设备及计算机存储介质
CN114461355A (zh) 异构计算集群统一管理方法、装置、电子设备及存储介质
CN115964153A (zh) 一种异步任务处理方法、装置、设备以及存储介质
CN113010280A (zh) 分布式任务的处理方法、系统、装置、设备和介质
CN111831408A (zh) 异步任务处理方法、装置、电子设备及介质
US10599479B2 (en) Resource sharing management of a field programmable device
CN115437766A (zh) 一种任务处理方法和装置
CN110109747B (zh) 基于Apache Spark的数据交换方法及系统、服务器
CN114661523A (zh) 数据备份方法、装置、程序产品、介质及电子设备
JP6613315B2 (ja) トランザクション処理システムおよびトランザクション制御方法
US11620076B2 (en) Accelerated non-volatile memory device inspection and forensics
US8359602B2 (en) Method and system for task switching with inline execution
CN108062224A (zh) 基于文件句柄的数据读写方法、装置及计算设备
US20090083745A1 (en) Techniques for Maintaining Task Sequencing in a Distributed Computer System
CN111353766A (zh) 分布式业务系统的业务流程处理系统及方法
CN112131188A (zh) 批量文件分发处理方法及装置

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