【技术实现步骤摘要】
流程调度方法、装置、设备、介质和程序产品
[0001]本公开涉及云计算
,具体地涉及一种流程调度方法、装置、设备、介质和程序产品。
技术介绍
[0002]目前流行的流程调度执行方案并非由一个服务或系统解决,一个流程中存在多个任务,这些任务的执行可以是基于流程节点的调度由多个服务或者系统协同完成,以实现资源的充分利用。
[0003]但是,由于上述执行方案是分布式的,所以流程节点存在散点执行的情况,即流程中的任务的执行分布在不同的分布式实例中执行,导致需要大量的数据库操作和分布式锁去同步流程和流程节点的状态,保证流程的正确调度和状态的准确,如果存在大量流程执行,就会存在多次查询数据库,对数据库造成压力,并且,分布式锁同步状态造成执行效率低下易错,排查错误困难,难以充分发挥分布式技术的优势。
技术实现思路
[0004]鉴于上述问题,本公开提供了提高流程执行效率和正确度的流程调度方法、装置、设备、介质和程序产品。
[0005]根据本公开的第一个方面,提供了一种流程调度方法,所述流程调度方法应用于流程调度平台中,所述流程调度平台用于调度分布式系统中的多个分布式实例资源,所述多个分布式实例至少包括第一分布式实例,所述方法包括:响应于流程执行请求,获取流程上下文,其中,所述流程上下文包括多个流程分支,所述流程分支包括多个流程节点;按照所述流程分支编排所述流程上下文,得到多个流程执行模型,所述流程执行模型包括按照队列排布的流程任务;将所述流程上下文发送至所述第一分布式实例的本地缓存;以及按照所述 ...
【技术保护点】
【技术特征摘要】
1.一种流程调度方法,所述流程调度方法应用于流程调度平台中,所述流程调度平台用于调度分布式系统中的多个分布式实例资源,所述多个分布式实例至少包括第一分布式实例,所述方法包括:响应于流程执行请求,获取流程上下文,其中,所述流程上下文包括多个流程分支,所述流程分支包括多个流程节点;按照所述流程分支编排所述流程上下文,得到多个流程执行模型,所述流程执行模型包括按照队列排布的流程任务;将所述流程上下文发送至所述第一分布式实例的本地缓存;以及按照所述多个流程执行模型中按照队列排布的流程任务,指导所述第一分布式实例获取所述本地缓存中的所述流程上下文,并使所述第一分布式实例基于所述流程节点执行流程任务。2.根据权利要求1所述的方法,其中,所述按照所述流程分支编排所述流程上下文,得到多个流程执行模型,包括:遍历所述流程上下文,判断所述流程上下文中的当前节点是否存在父节点;在所述当前节点不存在父节点的情况下,建立新队列,并将所述当前节点加入到所述新队列中;在所述当前节点存在父节点的情况下,判断所述当前节点的父节点是否具有大于一个的子节点;在所述当前节点的父节点具有大于一个的子节点的情况下,判断所述当前节点是否为所述当前节点的父节点的子节点列表中的第一个节点;在所述当前节点是所述当前节点的父节点的节点列表中的第一个节点的情况下,将所述当前节点加入到所述父节点所在的队列中;在所述当前节点不是所述当前节点的父节点的节点列表中的第一个节点的情况下,建立新队列,并将所述当前节点加入到所述新队列中,其中,一个所述队列中的节点的执行逻辑由一个线程执行,所述队列和所述线程是一一对应的,或者所述队列和所述线程是多对一的。3.根据权利要求1或2所述的方法,其中,所述多个流程执行模型是以有向无环图的形式关联的。4.根据权利要求1所述的方法,其中,在所述响应于流程执行请求,获取流程上下文后,所述按照所述流程分支编排所述流程上下文,得到多个流程执行模型前,还包括:建立流程状态树,所述流程状态树与所述流程上下文存在一致的树状结构,所述流程状态树的树节点是所述流程节点的节点状态。5.根据权利要求4所述的方法,其中,所述按照所述多个流程执行模型中按照队列排布的流程任务,指导所述第一分布式实例获取所述本地缓存中的所述流程上下文,并使所述第一分布式实例基于所述流程节点执行流程任务,包括:基于所述流程任务更新所述流程状态树的节点状态;基于所述流程状态树中的所述节点状态,监控所述执行模型是否满足预设的断点条
件;在所述执行模型满足预设的流程断点条件的情况下,阻塞所述执行模型;以及在触发于预设的流程恢复条件的情况下,恢复所述执行模型。6.根据权利要求5所述的方法,其中,所述基于所述流程状态树中的所述节点状态,监控所述执行模型是否满足预设的断点条件,包括:判断所述节点状态为执行中的所述流程任务是否超时;以及在所述节点状态为执行中的所述流程任务超时的情况下,判定所述执行模型满足预设的断点条件。7.根据权利要求5所述的方法,其中,所述在触发于预设的流程恢复条件的情况下,恢复所述执行模型,包括:接收执行结果,所述执行结果包括流程主键和任务主键;基于所述流程主键和所述任务主键定位所述第一分布式实例;以及基...
【专利技术属性】
技术研发人员:廖加嘉,张泳,刘伟,赵振标,
申请(专利权)人:中国工商银行股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。