一种异步批量处理方法及系统技术方案

技术编号:14016012 阅读:189 留言:0更新日期:2016-11-18 01:06
本发明专利技术公开了一种异步批量处理方法及系统,根据前端和/或后端发送的异步批量业务请求,生成事件信息和任务信息,轮询任务信息包含的任务队列,获取满足允许主控调度条件和预设执行条件的待执行任务以及该待执行任务的事件ID,从任务信息包含的任务步骤中,查询待执行任务对应的待执行任务步骤,当待执行任务步骤的前置步骤处理完成且该前置步骤的后续步骤能够并发时,通过实例化多线程并发处理后续步骤的每个步骤,并根据事件ID获取事件信息和所需处理参数,进行实际业务处理。由此可知,本发明专利技术通过轮询任务队列实现任务并发,并在待执行任务步骤处理时实现步骤并发,从而实现异步批量处理,大大缩短数据的处理时间,提高了数据处理效率。

【技术实现步骤摘要】

本专利技术涉及异步批量处理
,更具体的说,涉及一种异步批量处理方法及系统
技术介绍
当前,银行系统中的很多应用采用同步处理方法对应用数据进行处理。当应用数据较为复杂时,所需的处理时间就会比较长,操作人员等待系统的响应时间也相应变长,与此同时,应用数据需长时间保持连接状态,从而使后端服务器和网络的压力变大,导致后端服务器死机、网速变慢等。综上,如何提供一种异步批量处理方法及系统提高对数据的处理效率是本领域技术人员亟待解决的技术问题。
技术实现思路
有鉴于此,本专利技术公开一种异步批量处理方法及系统,以实现对数据处理效率的提高。一种异步批量处理方法,包括:接收前端和/或后端发送的异步批量业务请求;根据所述异步批量业务请求生成对应的事件信息和任务信息,其中,所述事件信息包括:事件队列和事件参数,所述任务信息包括:任务队列和任务步骤;按照预设顺序轮询所述任务队列,从所述任务队列中获取满足允许主控调度条件和预设执行条件的待执行任务,以及所述待执行任务的事件ID;从所述任务步骤中,查询所述待执行任务对应的待执行任务步骤;当所述待执行任务步骤的前置步骤处理完成后,判断所述待执行任务步骤中,所述前置步骤的后续步骤是否能够并发;若所述后续步骤能够并发,则实例化多线程并发处理所述后续步骤的每个步骤,并根据所述事件ID,获取所述事件信息和所需处理参数,进行实际业务处理。优选的,还包括:若所述后续步骤不能够并发,则依次单线程处理所述后续步骤的每个步骤。优选的,由所述后端生成所述异步批量业务请求的过程包括:轮询定时任务参数表;当所述定时任务参数表中记录有定时任务类型时,判断日终处理是否完成;如果所述日终处理完成,则循环处理所述定时任务参数表中记录的每一条定时任务类型,并在处理每一条定时任务类型时,判断当前时间是否在预设允许时间范围内;如果所述当前时间在所述预设允许时间范围内,则判断当前定时任务类型是否允许重复执行;如果所述当前定时任务类型不允许重复执行,则在当前日期与上次执行日期不相等时,根据所述当前定时任务类型生成所述异步批量业务请求;如果所述当前定时任务类型允许重复执行,则判断所述上次执行时间是否为空;如果所述上次执行时间为空,则直接根据所述当前定时任务类型生成所述异步批量业务请求;如果所述上次执行时间不为空,则在所述当前时间不小于所述上次执行时间和预设时间间隔之和时,根据所述当前定时任务类型生成所述异步批量业务请求。优选的,在所述按照预设顺序轮询所述任务队列,从所述任务队列中获取满足允许主控调度条件和预设执行条件的待执行任务,以及所述待执行任务的事件ID之后,还包括:修改所述待执行任务和当前事件的处理状态以及开始处理时间。优选的,在所述对所述待执行任务步骤进行步骤处理,并根据所述事件ID,获取所述事件信息和所需处理参数,进行实际业务处理之后,还包括:在所述实际业务处理完成后,修改所述待执行任务和当前事件的处理状态以及结束处理时间。优选的,在所述后续步骤并发处理完成后,还包括:获取所述待执行任务的处理状态;根据所述处理状态,判断所述待执行任务是否完成处理;如果是,则修改所述待执行任务和当前事件的处理状态以及结束处理时间;如果否,则从所述任务步骤中,判断是否还有所述待执行任务对应的未执行任务步骤;如果有所述未执行任务步骤,则执行所述未执行任务步骤,并修改当前任务步骤处理状态和开始处理时间;如果没有所述未执行任务步骤,则在预设时间段后,再次获取所述待执行任务的处理状态。一种异步批量处理系统,包括:接收单元,用于接收前端和/或后端发送的异步批量业务请求;生成单元,用于根据所述异步批量业务请求生成对应的事件信息和任务信息,其中,所述事件信息包括:事件队列和事件参数,所述任务信息包括:任务队列和任务步骤;第一获取单元,用于按照预设顺序轮询所述任务队列,从所述任务队列中获取满足允许主控调度条件和预设执行条件的待执行任务,以及所述待执行任务的事件ID;查询单元,用于从所述任务步骤中,查询所述待执行任务对应的待执行任务步骤;判断单元,用于当所述待执行任务步骤的前置步骤处理完成后,判断所述待执行任务步骤中,所述前置步骤的后续步骤是否能够并发;处理单元,用于若所述后续步骤能够并发,则实例化多线程并发处理所述后续步骤的每个步骤,对所述待执行任务步骤进行步骤处理,并根据所述事件ID,获取所述事件信息和所需处理参数,进行实际业务处理。优选的,还包括:单线程处理单元,用于若所述后续步骤不能够并发,则依次单线程处理所述前置步骤的下一个步骤。优选的,还包括:第一修改单元,用于在所述第一获取单元按照预设顺序轮询所述任务队列,从所述任务队列中获取满足允许主控调度条件和预设执行条件的待执行任务,以及所述待执行任务的事件ID之后,修改所述待执行任务和当前事件的处理状态以及开始处理时间。优选的,还包括:第二修改单元,用于在所述处理单元对所述待执行任务步骤进行步骤处理,并根据所述事件ID,获取所述事件信息和所需处理参数,进行实际业务处理之后,修改所述待执行任务和当前事件的处理状态以及结束处理时间。优选的,还包括:第二获取单元,用于在所述后续步骤并发处理完成后,获取所述待执行任务的处理状态;第一判断单元,用于根据所述处理状态,判断所述待执行任务是否完成处理;修改单元,用于在所述第一判断单元判断为是的情况下,修改所述待执行任务和当前事件的处理状态以及结束处理时间;第二判断单元,用于在所述第一判断单元判断为否的情况下,从所述任务步骤中,判断是否还有所有待执行任务对应的未执行任务步骤;执行修改单元,用于在所述第二判断单元判断为是的情况下,执行所述未执行任务步骤,并修改当前任务步骤处理状态和开始处理时间;再次获取单元,用于在所述第二判断单元判断为否的情况下,在预设时间段后,再次获取所述待执行任务的处理状态。从上述的技术方案可知,本专利技术公开了一种异步批量处理方法及系统,根据前端和/或后端发送的异步批量业务请求,生成事件信息和任务信息,轮询任务信息包含的任务队列,获取满足允许主控调度条件和预设执行条件的待执行任务以及该待执行任务的事件ID,从任务信息包含的任务步骤中,查询待执行任务对应的待执行任务步骤,当待执行任务步骤的前置步骤处理完成且该前置步骤的后续步骤能够并发时,通过实例化多线程并发处理后续步骤的每个步骤,并根据事件ID获取事件信息和所需处理参数,进行实际业务处理。由此可知,本专利技术通过轮询任务队列,实时获取任务队列中的待执行任务,并对该待执行任务进行实时处理,实现任务并发处理,与此同时,当与该待执行任务对应的待执行任务步骤的前置步骤处理完成,且该前置步骤的后续步骤能够并发时,通过实例化多线程并发处理后续步骤的每个步骤,实现步骤并发处理。因此,本专利技术实现了异步批量处理,相比同步处理而言,本专利技术可以大大缩短数据的处理时间,从而提高了数据处理效率。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据公开的附图获得其他的附图。图1为本专利技术实施例公开的一种异步批量处理方法的方法流程图;本文档来自技高网...
一种异步批量处理方法及系统

【技术保护点】
一种异步批量处理方法,其特征在于,包括:接收前端和/或后端发送的异步批量业务请求;根据所述异步批量业务请求生成对应的事件信息和任务信息,其中,所述事件信息包括:事件队列和事件参数,所述任务信息包括:任务队列和任务步骤;按照预设顺序轮询所述任务队列,从所述任务队列中获取满足允许主控调度条件和预设执行条件的待执行任务,以及所述待执行任务的事件ID;从所述任务步骤中,查询所述待执行任务对应的待执行任务步骤;当所述待执行任务步骤的前置步骤处理完成后,判断所述待执行任务步骤中,所述前置步骤的后续步骤是否能够并发;若所述后续步骤能够并发,则实例化多线程并发处理所述后续步骤的每个步骤,并根据所述事件ID,获取所述事件信息和所需处理参数,进行实际业务处理。

【技术特征摘要】
1.一种异步批量处理方法,其特征在于,包括:接收前端和/或后端发送的异步批量业务请求;根据所述异步批量业务请求生成对应的事件信息和任务信息,其中,所述事件信息包括:事件队列和事件参数,所述任务信息包括:任务队列和任务步骤;按照预设顺序轮询所述任务队列,从所述任务队列中获取满足允许主控调度条件和预设执行条件的待执行任务,以及所述待执行任务的事件ID;从所述任务步骤中,查询所述待执行任务对应的待执行任务步骤;当所述待执行任务步骤的前置步骤处理完成后,判断所述待执行任务步骤中,所述前置步骤的后续步骤是否能够并发;若所述后续步骤能够并发,则实例化多线程并发处理所述后续步骤的每个步骤,并根据所述事件ID,获取所述事件信息和所需处理参数,进行实际业务处理。2.根据权利要求1所述的异步批量处理方法,其特征在于,还包括:若所述后续步骤不能够并发,则依次单线程处理所述后续步骤的每个步骤。3.根据权利要求1所述的异步批量处理方法,其特征在于,由所述后端生成所述异步批量业务请求的过程包括:轮询定时任务参数表;当所述定时任务参数表中记录有定时任务类型时,判断日终处理是否完成;如果所述日终处理完成,则循环处理所述定时任务参数表中记录的每一条定时任务类型,并在处理每一条定时任务类型时,判断当前时间是否在预设允许时间范围内;如果所述当前时间在所述预设允许时间范围内,则判断当前定时任务类型是否允许重复执行;如果所述当前定时任务类型不允许重复执行,则在当前日期与上次执行日期不相等时,根据所述当前定时任务类型生成所述异步批量业务请求;如果所述当前定时任务类型允许重复执行,则判断所述上次执行时间是否为空;如果所述上次执行时间为空,则直接根据所述当前定时任务类型生成所述异步批量业务请求;如果所述上次执行时间不为空,则在所述当前时间不小于所述上次执行时间和预设时间间隔之和时,根据所述当前定时任务类型生成所述异步批量业务请求。4.根据权利要求1所述的异步批量处理方法,其特征在于,在所述按照预设顺序轮询所述任务队列,从所述任务队列中获取满足允许主控调度条件和预设执行条件的待执行任务,以及所述待执行任务的事件ID之后,还包括:修改所述待执行任务和当前事件的处理状态以及开始处理时间。5.根据权利要求1所述的异步批量处理方法,其特征在于,在所述对所述待执行任务步骤进行步骤处理,并根据所述事件ID,获取所述事件信息和所需处理参数,进行实际业务处理之后,还包括:在所述实际业务处理完成后,修改所述待执行任务和当前事件的处理状态以及结束处理时间。6.根据权利要求1所述的异步批量处理方法,其特征在于,在所述后续步骤并发处理完成后,还包括:获取所述待执行任务的处理状态;根据所述处理状态,判断所述待执行任务是否完成处理;如果是,则修改所述待执行任务和当前事件的处理状态以及结束处理时间;如果否,...

【专利技术属性】
技术研发人员:杨林陈悌宇冯德虎朱瑜东陈刚蒋玉树范钟艺袁书平周春春
申请(专利权)人:中国建设银行股份有限公司
类型:发明
国别省市:北京;11

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

1