一种自动任务处理方法及装置制造方法及图纸

技术编号:11116607 阅读:113 留言:0更新日期:2015-03-06 13:48
本申请公开了一种自动任务处理方法及装置,方法为:接收联机交易应用通过预设的自动任务定义接口上传的自动任务数据,并将自动任务数据存储至数据库;响应Quartz框架的第一触发指令,将数据库中待实例化的自动任务数据实例化为自动任务实例,并存储至数据库;响应Quartz框架的第二触发指令,调起数据库中待执行的自动任务实例;调用Spring-batch框架的Job执行所述待执行的自动任务实例。本申请预先设置自动任务定义接口,用户每次使用联机交易应用上传数据时无需重复编写代码文件,只需要将自动任务数据上传即可,自动任务定义接口会自动将自动任务数据进行处理整合,并存储至数据库,大大提高了工作效率。

【技术实现步骤摘要】

本申请涉及软件
,更具体地说,涉及一种自动任务处理方法及装置
技术介绍
自动任务是在指定时间点或一个日期范围内以指定的周期按指定的频率自动被调起的任务,它的调度执行无需人工干预,按来源主要分为两类,一类是联机交易时根据交易环境预约的任务,一类是项目上线时直接预埋在数据库的任务。现有自动任务处理方式包括Spring-batch框架和Quartz框架处理,这两个框架本身是优秀的开源框架,但是在大型软件项目开发中,直接使用两个框架对于应用开发者而言较为复杂。而且Quartz本身不能良好地支持预约执行任务;Spring-batch涉及的时候对作业定义较为复杂,而配置都定义在配置文件中,如果为每个自动任务应用都配置一个Job,处理起来将会非常麻烦。
技术实现思路
有鉴于此,本申请提供了一种自动任务处理方法及装置,用于解决传统自动任务处理方式较为复杂的问题。为了实现上述目的,现提出的方案如下:一种自动任务处理方法,包括:接收联机交易应用通过预设的自动任务定义接口上传的自动任务数据,并将所述自动任务数据存储至数据库,所述自动任务数据包括任务周期数据、前处理服务名、后处理服务名和应用逻辑服务名;响应Quartz框架的第一触发指令,将数据库中待实例化的自动任务数据实例化为自动任务实例,并存储至数据库;响应Quartz框架的第二触发指令,调起数据库中待执行的自动任务实例;调用Spring-batch框架的Job执行所述待执行的自动任务实例。优选地,若所述待执行的自动任务实例允许并发执行,则所述调用Spring-batch框架的Job执行所述待执行的自动任务实例的过程,包括:通过预设的前处理接口,向联机交易应用调用服务名为前处理服务名的前处理服务,并利用前处理服务对自动任务实例进行前处理;通过预设的应用业务逻辑接口,向联机交易应用调用服务名为应用逻辑服务名的应用逻辑服务,并利用应用逻辑服务对自动任务实例进行应用逻辑处理;通过预设的后处理接口,向联机交易应用调用服务名为后处理的后处理服务,并利用后处理服务对自动任务实例进行后处理。优选地,若所述待执行的自动任务实例不允许并发执行,则所述调用Spring-batch框架的Job执行所述待执行的自动任务实例的过程,包括:判断当前是否存在正在执行的自动任务实例;若是,则停止执行所述待执行的自动任务实例,直至确定当前没有正在执行的自动任务实例时,进入步骤a;若否,则进入步骤a;其中,步骤a为:通过预设的前处理接口,向联机交易应用调用服务名为前处理服务名的前处理服务,并利用前处理服务对自动任务实例进行前处理;通过预设的应用业务逻辑接口,向联机交易应用调用服务名为应用逻辑服务名的应用逻辑服务,并利用应用逻辑服务对自动任务实例进行应用逻辑处理;通过预设的后处理接口,向联机交易应用调用服务名为后处理的后处理服务,并利用后处理服务对自动任务实例进行后处理。优选地,所述将数据库中待实例化的自动任务数据实例化为自动任务实例包括:参考任务周期数据及系统当前时间,生成自动任务实例。优选地,若所述待执行的自动任务实例允许多线程执行,则所述前处理服务为将待执行的自动任务实例的数据按照线程数量N分为N个区,划定每个线程所执行的数据;所述后处理服务为将每个线程处理后的结果进行汇总。一种自动任务处理装置,包括:自动任务数据接收单元,用于接收联机交易应用通过预设的自动任务定义接口上传的自动任务数据,并将所述自动任务数据存储至数据库,所述自动任务数据包括任务周期数据、前处理服务名、后处理服务名和应用逻辑服务名;实例化单元,用于响应Quartz框架的第一触发指令,将数据库中待实例化的自动任务数据实例化为自动任务实例,并存储至数据库;任务调起单元,用于响应Quartz框架的第二触发指令,调起数据库中待执行的自动任务实例;任务执行单元,用于调用Spring-batch框架的Job执行所述待执行的自动任务实例。优选地,若所述待执行的自动任务实例允许并发执行,则所述任务执行单元包括:任务前处理单元,用于通过预设的前处理接口,向联机交易应用调用服务名为前处理服务名的前处理服务,并利用前处理服务对自动任务实例进行前处理;逻辑处理单元,用于通过预设的应用业务逻辑接口,向联机交易应用调用服务名为应用逻辑服务名的应用逻辑服务,并利用应用逻辑服务对自动任务实例进行应用逻辑处理;任务后处理单元,用于通过预设的后处理接口,向联机交易应用调用服务名为后处理的后处理服务,并利用后处理服务对自动任务实例进行后处理。优选地,若所述待执行的自动任务实例不允许并发执行,则所述任务执行单元包括:判断单元,用于判断当前是否存在正在执行的自动任务实例;停止单元,用于在所述判断单元的判断结果为是时,停止执行所述待执行的自动任务实例;处理单元,用于在所述判断单元的判断结果为否时,执行下述过程:通过预设的前处理接口,向联机交易应用调用服务名为前处理服务名的前处理服务,并利用前处理服务对自动任务实例进行前处理;通过预设的应用业务逻辑接口,向联机交易应用调用服务名为应用逻辑服务名的应用逻辑服务,并利用应用逻辑服务对自动任务实例进行应用逻辑处理;通过预设的后处理接口,向联机交易应用调用服务名为后处理的后处理服务,并利用后处理服务对自动任务实例进行后处理。优选地,所述实例化单元具体用于响应Quartz框架的第一触发指令,参考任务周期数据及系统当前时间,生成自动任务实例,并存储至数据库。优选地,若所述待执行的自动任务实例允许多线程执行,则所述前处理服务为将待执行的自动任务实例的数据按照线程数量N分为N个区,划定每个线程所执行的数据;所述任务后处理单元调用的后处理服务为将每个线程处理后的结果进行汇总。从上述的技术方案可以看出,本申请实施例提供的自动任务处理方法,接收联机交易应用通过预设的自动任务定义接口上传的自动任务数据,并将自动任务数据存储至数据库,所述自动任务数据包括任务周期数据、前处理服务名、后处理服务名和应用逻辑服务名;响应Quartz框架的第一触发指令,将数据库中待实例化的自动任务数据实例化为自动任务实例,并存储至数据库;响应Quartz框架的第二触发指令,调起数据库中待执行的自动任务实例;调用Spring-batch框架的Job执行所述待执行的自动任务实例。本本文档来自技高网...

【技术保护点】
一种自动任务处理方法,其特征在于,包括:接收联机交易应用通过预设的自动任务定义接口上传的自动任务数据,并将所述自动任务数据存储至数据库,所述自动任务数据包括任务周期数据、前处理服务名、后处理服务名和应用逻辑服务名;响应Quartz框架的第一触发指令,将数据库中待实例化的自动任务数据实例化为自动任务实例,并存储至数据库;响应Quartz框架的第二触发指令,调起数据库中待执行的自动任务实例;调用Spring‑batch框架的Job执行所述待执行的自动任务实例。

【技术特征摘要】
1.一种自动任务处理方法,其特征在于,包括:
接收联机交易应用通过预设的自动任务定义接口上传的自动任务数据,
并将所述自动任务数据存储至数据库,所述自动任务数据包括任务周期数据、
前处理服务名、后处理服务名和应用逻辑服务名;
响应Quartz框架的第一触发指令,将数据库中待实例化的自动任务数据
实例化为自动任务实例,并存储至数据库;
响应Quartz框架的第二触发指令,调起数据库中待执行的自动任务实例;
调用Spring-batch框架的Job执行所述待执行的自动任务实例。
2.根据权利要求1所述的自动任务处理方法,其特征在于,若所述待执
行的自动任务实例允许并发执行,则所述调用Spring-batch框架的Job执行所
述待执行的自动任务实例的过程,包括:
通过预设的前处理接口,向联机交易应用调用服务名为前处理服务名的
前处理服务,并利用前处理服务对自动任务实例进行前处理;
通过预设的应用业务逻辑接口,向联机交易应用调用服务名为应用逻辑
服务名的应用逻辑服务,并利用应用逻辑服务对自动任务实例进行应用逻辑
处理;
通过预设的后处理接口,向联机交易应用调用服务名为后处理的后处理
服务,并利用后处理服务对自动任务实例进行后处理。
3.根据权利要求1所述的自动任务处理方法,其特征在于,若所述待执
行的自动任务实例不允许并发执行,则所述调用Spring-batch框架的Job执行
所述待执行的自动任务实例的过程,包括:
判断当前是否存在正在执行的自动任务实例;
若是,则停止执行所述待执行的自动任务实例,直至确定当前没有正在
执行的自动任务实例时,进入步骤a;
若否,则进入步骤a;
其中,步骤a为:
通过预设的前处理接口,向联机交易应用调用服务名为前处理服务名的
前处理服务,并利用前处理服务对自动任务实例进行前处理;
通过预设的应用业务逻辑接口,向联机交易应用调用服务名为应用逻辑
服务名的应用逻辑服务,并利用应用逻辑服务对自动任务实例进行应用逻辑
处理;
通过预设的后处理接口,向联机交易应用调用服务名为后处理的后处理
服务,并利用后处理服务对自动任务实例进行后处理。
4.根据权利要求1所述的自动任务处理方法,其特征在于,所述将数据
库中待实例化的自动任务数据实例化为自动任务实例包括:
参考任务周期数据及系统当前时间,生成自动任务实例。
5.根据权利要求2或3所述的自动任务处理方法,其特征在于,若所述
待执行的自动任务实例允许多线程执行,则所述前处理服务为将待执行的自
动任务实例的数据按照线程数量N分为N个区,划定每个线程所执行的数据;
所述后处理服务为将每个线程处理后的结果进行汇总。
6.一种自动任务处理装置,其特征在于,包...

【专利技术属性】
技术研发人员:刘海聂砂邢磊白彧斐黎育龙杨涛
申请(专利权)人:中国建设银行股份有限公司
类型:发明
国别省市:北京;11

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

1