欢迎来到知嘟嘟! 联系电话:13336804447 卖家免费入驻,海量在线求购! 卖家免费入驻,海量在线求购!
知嘟嘟
我要发布
联系电话:13336804447
知嘟嘟经纪人
收藏
专利号: 2022102830891
申请人: 平安普惠企业管理有限公司
专利类型:发明专利
专利状态:授权未缴费
专利领域: 计算;推算;计数
更新日期:2024-04-17
缴费截止日期: 暂无
价格&联系人
年费信息
委托购买

摘要:

权利要求书:

1.一种基于Java的同异步任务的执行方法,其特征在于,所述方法包括:当接收到用户发出的任务执行请求时,在Java主流程执行的最后执行阶段调用Java次流程的执行入口,从所述执行入口获取与所述任务对应的任务链;

获取预设的流程执行记录表、流程配置表和子节点配置表,根据所述流程执行记录表、流程配置表和子节点配置表分别执行所述任务链中的子节点,并获取执行子节点后的执行结果;其中,所述任务链中包含多个子节点;

根据所述执行结果更新所述流程执行记录表中与所述任务对应的执行状态。

2.根据权利要求1所述的基于Java的同异步任务的执行方法,其特征在于,所述获取预设的流程执行记录表、流程配置表和子节点配置表,根据所述流程执行记录表、流程配置表和子节点配置表分别执行所述任务链中的子节点,并获取执行子节点后的执行结果之前,还包括:设置所述任务链所需的属性和属性值,并根据所述属性和属性值建立所述流程执行记录表、流程配置表和子节点配置表。

3.根据权利要求2所述的基于Java的同异步任务的执行方法,其特征在于,所述设置所述任务链所需的属性和属性值之后,还包括:获取所述属性中的流程编码和节点编码,将所述流程编码和节点编码定义为所述任务链的Java类在应用容器中的BeanName。

4.根据权利要求1所述的基于Java的同异步任务的执行方法,其特征在于,所述根据所述流程执行记录表、流程配置表和子节点配置表分别执行所述任务链中的子节点之前,还包括:在确定系统并发量小于等于预设阈值量时,将与任务对应的任务链中的执行入参写入所述流程执行记录表,并将所述流程执行记录表中与执行入参对应的任务的执行状态记录为待处理;

在确定系统并发量大于预设阈值量时,将与任务对应的任务链中的执行入参写入等待队列中,通过所述等待队列将所述执行入参批量写入所述流程执行记录表,并将所述流程执行记录表中与执行入参对应的任务的执行状态记录为待处理。

5.根据权利要求4所述的基于Java的同异步任务的执行方法,其特征在于,所述将与任务对应的任务链中的执行入参写入至所述流程执行记录表之后,或者所述通过所述等待队列将所述执行入参批量写入至所述流程执行记录表之后,还包括:通过所述执行入参获取BeanName;

通过所述BeanName查询所述流程配置表中的属性后,得到包含多个子节点的子节点列表;

查询所述子节点配置表后,得到子节点执行顺序;

通过所述子节点执行顺序对所述子节点列表中的所有子节点进行排序,得到待执行的子节点列表。

6.根据权利要求5所述的基于Java的同异步任务的执行方法,其特征在于,所述得到待执行的子节点列表之后,还包括:遍历所述待执行的子节点列表后,从所述流程执行记录表或所述子节点配置表获取与所述待执行的子节点列表的节点对应的节点编码,通过节点编码调用应用容器中的获取函数获取子节点执行顺序最前的子节点的bean;

通过动态代理的方式调用与子节点执行顺序最前的子节点的bean对应的子节点的执行入口,同时获取从所述子节点的执行入口返回的子节点执行后的执行结果;

通过所述执行结果确定是否需要执行子节点执行顺序靠前的子节点的下一个靠后的子节点;

在确定所述执行结果为成功时,继续获取下一个靠后的子节点的bean,通过动态代理的方式调用与下一个靠后的子节点的bean对应的子节点的执行入口,获取从所述子节点的执行入口返回的子节点执行后的执行结果,并再次确定通过该执行结果确定是否需要执行下一个靠后的子节点的下一个节点;

在确定所述执行结果为失败时,获取失败执行结果对应的失败子节点以及失败原因。

7.根据权利要求1所述的基于Java的同异步任务的执行方法,其特征在于,所述根据所述执行结果更新所述流程执行记录表中与所述任务对应的执行状态,包括:在确定所有子节点对应的执行结果为成功时,将与所述任务对应的流程执行记录表中的执行状态更新为成功执行状态;

在确定其中一个子节点对应的执行结果为失败时,将与所述任务对应的流程执行记录表中的执行状态更新为失败执行状态,同时将失败子节点以及失败原因更新至该流程执行记录表中;所述成功执行状态和所述失败执行状态作为所述流程执行记录表中的执行结果的属性值。

8.一种基于Java的同异步任务的执行装置,其特征在于,所述装置包括:获取模块,用于当接收到用户发出的任务执行请求时,在Java主流程执行的最后执行阶段调用Java次流程的执行入口,从所述执行入口获取与所述任务对应的任务链;

执行模块,用于获取预设的流程执行记录表、流程配置表和子节点配置表,根据所述流程执行记录表、流程配置表和子节点配置表分别执行所述任务链中的子节点,并获取执行子节点后的执行结果;其中,所述任务链中包含多个子节点;

更新模块,用于根据所述执行结果更新所述流程执行记录表中与所述任务对应的执行状态。

9.一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至

7中任一项所述一种基于Java的同异步任务的执行方法。

10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7中任一项所述一种基于Java的同异步任务的执行方法。