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

技术编号:23604401 阅读:98 留言:0更新日期:2020-03-28 05:34
本发明专利技术实施例涉及金融科技(Finetch)技术领域,公开了一种任务处理方法及装置,任务调度系统中的任一执行节点监控待处理任务集合中每个任务的调度状态,在监控到某一任务处于可调度状态后,若确定该执行节点中该任务所属的队列的任务并发量和该执行节点的任务并发量均未满载,则锁定该任务,并执行该任务。通过执行节点实时监控其资源的使用情况,使得执行节点在其任务并发量和任务所属的队列的任务并发量均未满载的情况下再执行可调度的任务,从而执行节点中待处理的任务可以始终处于其资源的可用范围内,从而可以避免执行节点中待处理的任务阻塞,提高任务处理的效率。

A task processing method and device

【技术实现步骤摘要】
一种任务处理方法及装置
本专利技术涉及数据处理领域,尤其涉及一种任务处理方法及装置。
技术介绍
随着计算机技术的发展,越来越多的技术应用在金融领域,传统金融行业也正在逐步向金融科技(Fintech)转变,然而,由于金融行业的安全性、实时性要求,使得金融科技领域对技术提出了更高的要求。金融行业一般都会涉及到批量处理作业,对于批量处理作业涉及的大量任务,金融行业需要尽可能地保证任务处理的准确性、安全性和不可丢失性,这就要求金融行业在执行批量处理作业时可以快速且及时地调度各项任务,保证批量任务处理的效率。Quartz框架是现有较为常用的一种调度框架,开发人员可以基于该框架开发自己的任务调度系统,基于Quartz框架开发的任务调度系统通常需要设置任务分发平台,开发人员预先在任务分发平台中设置任务与节点的对应关系,以使任务分发平台基于任务与节点的对应关系对任务调度系统中的各个任务进行分发。然而,在执行批量处理作业时,任务调度系统中可能会存在某一节点需要执行大量的任务,而该节点的资源却并不能支持其对应的任务数量,因此,若仍然基于该种方式分发任务,可本文档来自技高网...

【技术保护点】
1.一种任务处理方法,其特征在于,所述方法应用于任务调度系统中的任一执行节点,所述执行节点中设置有多个队列,所述多个队列的满载任务并发量之和大于所述执行节点的满载任务并发量,所述方法包括:/n监控待处理任务集合中每个任务的调度状态;/n针对于所述待处理任务集合中的任一任务,在监控到所述任务处于可调度状态后,若确定所述执行节点中所述任务所属的队列的任务并发量小于所述任务所属的队列的满载任务并发量,且所述执行节点的任务并发量小于所述执行节点的满载任务并发量,则设置所述待处理任务集合中所述任务的状态为已锁定状态,并执行所述任务;所述任务的已锁定状态用于避免其它执行节点执行所述任务。/n

【技术特征摘要】
1.一种任务处理方法,其特征在于,所述方法应用于任务调度系统中的任一执行节点,所述执行节点中设置有多个队列,所述多个队列的满载任务并发量之和大于所述执行节点的满载任务并发量,所述方法包括:
监控待处理任务集合中每个任务的调度状态;
针对于所述待处理任务集合中的任一任务,在监控到所述任务处于可调度状态后,若确定所述执行节点中所述任务所属的队列的任务并发量小于所述任务所属的队列的满载任务并发量,且所述执行节点的任务并发量小于所述执行节点的满载任务并发量,则设置所述待处理任务集合中所述任务的状态为已锁定状态,并执行所述任务;所述任务的已锁定状态用于避免其它执行节点执行所述任务。


2.根据权利要求1所述的方法,其特征在于,所述在监控到所述任务处于可调度状态后,还包括:
根据所述待处理任务集合中多个任务的依赖关系,确定所述任务依赖的上级任务;
从所述待处理任务集合中确定出所述任务依赖的上级任务的执行状态;
若所述上级任务的执行状态为已执行完成,则确定所述执行节点中所述任务所属的队列的任务并发量是否小于所述任务所属的队列的满载任务并发量;
若所述任务的执行状态为正在执行、未调度、未执行中的任意一种,则等待所述上级任务执行完成后,确定所述执行节点中所述任务所属的队列的任务并发量是否小于所述任务所属的队列的满载任务并发量。


3.根据权利要求1所述的方法,其特征在于,所述执行所述任务,包括:
根据所述执行节点中所述任务所属的队列的任务并发量和所述执行节点的任务并发量确定所述执行节点中所述任务所属的队列当前可执行的任务数量;
确定所述任务的优先级在所述任务所属的队列中的排名,若所述排名位于所述任务所属的队列当前可执行的任务数量内,则开始执行所述任务。


4.根据权利要求1所述的方法,其特征在于,所述任务调度系统还包括管理节点和调度节点;所述管理节点用于获取任务配置信息,所述调度节点用于根据所述管理节点获取的任务配置信息创建对应的一个或多个任务,并将所述一个或多个任务、所述一个或多个任务的依赖关系、每个任务的调度条件及执行状态、每个任务所属的队列标识添加在所述待处理任务集合中;
所述监控到所述任务处于可调度状态,包括:
从所述待处理任务集合中获取所述任务的调度条件,若确定满足所述任务的调度条件,则确定所述任务处于可调度状态。


5.根据权利要求1至4中任一项所述的方法,其特征在于,所述方法还包括:
针对于任一任务,统计所述任务在时长指标下的值,根据所述任务在所述时长指标下的值与所述时长指标的阈值计算得到所述任务在所述时长指标下的时长波动率,若所述任务在所述时长指标下的时长波动率大于所述时长指标对应的预设时长波动率,则对所述任务进行告警;所述时长指标包括耗时时长、超时时长和延时时长中的任一一项或任意多项;或者,
针对于所述任务调度系统中的每批任务,确定所述任务在设定时刻时的执行完成率,若所述执行完成率小于预设完成率,则对所述任务调度系统进行扩容;或者,
根据所述任务调度系统中各个执行节点在第一时段的平均任务执行量相比于所述各个执行节点在第二时段的平均任务执行量的增长量,确定所述第一时段相对于所述第二时段的任务增长率;所述第一时段位于所述第二时段之后;若所述任务增长率大于或等于所述各个执行节点的平均资源占用率,则对所述任务调度系统进行扩容;所述各个执行节点的平均资源占用率为所述各个执行节点的平均资源量与所述任务调度系统的资源总量的比值;
其中,扩容的方式包括以下任意一项或任意多项:增加所述任务调度系统中执行节点的数量、增大任意一个或任意多个执行节点的任务并发量、增大任意一个或任意多个执行节点中所述任务所属的队列的任务并发量、配置任意一个或任意多个执行节点的中央处理器CPU的核数。


6.一种任务处理装置,其特征在于,所述装置为任务调度系统中的任一执行节点,所述执行节点中设置有多个队列,所述多个队列的满载任务并发量之和大于所述执行节点的满载任务并发量,所述装置包括:

【专利技术属性】
技术研发人员:旷波王大飞文海荣江旻
申请(专利权)人:深圳前海微众银行股份有限公司
类型:发明
国别省市:广东;44

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

1