【技术实现步骤摘要】
一种多任务并发调度的系统及方法
本专利技术涉及计算机
,尤其涉及一种多任务并发调度的系统及方法。
技术介绍
针对由至少两个应用服务模块组建的流水线型处理系统,如果其不能并发地处理多个任务,往往将会使得系统的整体性能显著降低。尤其是在面对一些对实时性要求很高的应用(例如,金融、银行、证券行业的实时交易业务等)时,这时如果仅仅分配单个任务去处理请求,然后等待该任务将整个的流程处理完毕之后再分配下一个任务,则就执行效率而言,远远不能够满足实际的需求。随着科技和认识水平的不断发展,针对上述单任务处理方式存在的弊端,人们又提出了一种多任务并发操作的新型、高效的处理方式,即采用在宏观上并行(在微观上可能是串行)地“同时”执行多个任务的机制,从而能够较好匹配真实世界中的事件发展过程,实现两个或多个事件在同一个时间间隔内并行进行。因此,采用多任务并发处理的方式确实有助于解决上述的现实问题,能够较好地改善此类流水线型处理系统的性能。但是,采用此类多任务并发处理方式也还会产生一些新的技术问题。其中,比较突出的一个就是:流水线型处理系统中各个模块中间处理结果的相互依赖的问 ...
【技术保护点】
一种多任务并发调度的系统,其包括由至少两个应用服务模块组建的流水线型处理子系统,其特征在于还包括:任务状态模块,其用于根据某一个任务在所述各应用服务模块的当前执行情况记录该任务的运行状态信息;以及任务总控模块,其包括:初始化子模块与调度子模块,所述初始化子模块用于创建并初始化多个任务;所述调度子模块用于周期性地查询获知所述多个任务中每一个任务当前的所述运行状态信息,并根据所述查询结果管理所述多个任务并发执行。
【技术特征摘要】
1.一种多任务并发调度的系统,其包括由至少两个应用服务模块组建的流水线型处理子系统,其特征在于还包括:任务状态模块,其用于根据某一个任务在所述各应用服务模块的当前执行情况记录该任务的运行状态信息;以及任务总控模块,其包括:初始化子模块与调度子模块,所述初始化子模块用于创建并初始化多个任务;所述调度子模块用于周期性地查询获知所述多个任务中每一个任务当前的所述运行状态信息,并根据所述查询结果管理所述多个任务并发执行;其中,所述调度子模块根据所述查询结果管理所述多个任务的内容包括:如果查询结果表示所述多个任务中的某一个任务等待开始,则调用所述流水线型处理子系统中的第一个应用服务模块将该任务的所述任务状态更改为表示在第一个应用服务模块中正在进行,并由第一个应用服务模块开始执行该任务;在所述第一个应用服务模块执行完毕后,则依次顺序调用下一个应用服务模块将该任务的所述任务状态更改为表示在该应用服务模块中正在进行,并由该应用服务模块开始执行该任务,直至最后一个应用服务模块执行完毕;然后,由该最后一个应用服务模块将该任务的所述任务状态更改为表示已经完成;或者如果查询结果表示所述多个任务中的某一个任务已经完成,则调用所述初始化子模块初始化该任务。2.根据权利要求1所述的多任务并发调度的系统,其特征在于,所述运行状态信息包括所述多个任务中每一个任务的任务号和任务状态,所述每个任务的任务号是由所述初始化子模块在创建任务时分配,所述每个任务的任务状态由所述初始化子模块在初始化时均表示为等待开始。3.根据权利要求1-2中任一项所述的多任务并发调度的系统,其特征在于,所述任务总控模块还包括配置子模块,其用于获取配置参数并将其传至所述初始化子模块,所述配置参数包括所述任务总控模块并发执行的最大任务数。4.根据权利要求3所述的多任务并发调度的系统,其特征在于,所述配置参数还包括最大超时重发次数以对应于每一个应用服务模块在执行所述多个任务中的某一个任务失败之后被允许重复执行该任务的最大次数,所述运行状态信息还包括超时重发次数以对应于某一个应用服务模块在执行所述多个任务中的某一个任务失败之后已经重复执行该任务的次数,所述任务总控模块还包括:超时监控子模块,其用于供每一个应用服务模块在执行所述多个任务中的每一个任务之前为该任务设定完成时限并进行监控,且在执行该任务发生超时后则通知该应用服务模块将该任务的所述任务状态更改为表示该任务已经失败。5.根据权利要求4所述的多任务并发调度的系统,其特征在于,所述调度子模块根据所述查询结果管理所述多个任务的内容还包括:如果查询结果表示所述多个任务中的某一个任务已经失败,则将所述超时重发次数与所述最大超时重发次数进行比较:如果所述超时重发次数达到所述最大超时重发次数,则将该任务的所述任务状态更改为表示该任务已经完成;否则,将该任...
【专利技术属性】
技术研发人员:陈林,白玫,
申请(专利权)人:中国银联股份有限公司,
类型:发明
国别省市:31[中国|上海]
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。