CN112948077A - 批处理方法、装置、设备及存储介质 - Google Patents
批处理方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN112948077A CN112948077A CN202110165844.1A CN202110165844A CN112948077A CN 112948077 A CN112948077 A CN 112948077A CN 202110165844 A CN202110165844 A CN 202110165844A CN 112948077 A CN112948077 A CN 112948077A
- Authority
- CN
- China
- Prior art keywords
- task
- center
- execution
- module
- node
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
- G06F9/5038—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the execution order of a plurality of tasks, e.g. taking priority or time dependency constraints into consideration
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
- G06F9/505—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the load
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5083—Techniques for rebalancing the load in a distributed system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/546—Message passing systems or structures, e.g. queues
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/48—Indexing scheme relating to G06F9/48
- G06F2209/484—Precedence
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/50—Indexing scheme relating to G06F9/50
- G06F2209/5017—Task decomposition
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/50—Indexing scheme relating to G06F9/50
- G06F2209/5021—Priority
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/54—Indexing scheme relating to G06F9/54
- G06F2209/547—Messaging middleware
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/54—Indexing scheme relating to G06F9/54
- G06F2209/548—Queue
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Abstract
本申请提供一种批处理方法、装置、设备及存储介质,涉及批处理技术领域。该方法包括:所述主控制中心根据所述任务调度中心发送的任务调度指令,确定待执行的至少一个子任务;所述任务调度中心获取所述主控制中心发送的各所述子任务;所述任务调度中心将满足执行条件的所述子任务分配至对应的目标处理中心;所述目标处理中心用于执行所述子任务。相对于现有技术,避免了银行系统不具备完整的分布式批处理功能,导致系统的可用性和稳定性不高的问题。
Description
技术领域
本申请涉及批处理技术领域,具体而言,涉及一种批处理方法、装置、设备及存储介质。
背景技术
随着银行业务的不断发展,为提升银行系统发自主能力,摆脱对国外产商的依赖,响应国家自主可控的战略要求,急需建立一种应用于银行系统的批处理系统,实现对公、对私客户信息管理,确保能够全面、准确了解客户及需求,支持后续开展针对性的营销和服务,提升客户体验和满意度。
现有技术中的银行一通可以通过简单的分布式部署的方式,将多个任务拆分到多台处理服务器上并发执行,从而起到缩短执行时间的效果。
但是目前银行系统市场上的银行系统不具备完整的分布式批处理功能,导致系统的可用性和稳定性不高。
发明内容
本申请的目的在于,针对上述现有技术中的不足,提供一种批处理方法、装置、设备及存储介质,以解决现有技术中银行系统不具备完整的分布式批处理功能,导致系统的可用性和稳定性不高的问题。
为实现上述目的,本申请实施例采用的技术方案如下:
第一方面,本申请一实施例提供了一种批处理方法,应用于分布式批处理系统中,所述系统中包括:任务调度中心、至少一个控制中心和至少一个处理中心,所述至少一个控制中心中包括:主控制中心,所述方法包括:
所述主控制中心根据所述任务调度中心发送的任务调度指令,确定待执行的至少一个子任务;
所述任务调度中心获取所述主控制中心发送的各所述子任务;
所述任务调度中心将满足执行条件的所述子任务分配至对应的目标处理中心;所述目标处理中心用于执行所述子任务。
可选地,所述任务调度中心将满足执行条件的所述子任务分配至对应的目标处理中心之前,所述方法还包括:
所述任务调度中心根据至少一个待分配任务的任务类型,确定各所述待分配任务的分配时机。
可选地,所述待分配任务的任务类型包括:需要资源的任务或不需要资源的任务;
在所述待分配任务的类型为所述需要资源的任务时,确定所述待分配任务的分配时机为添加所述待分配任务,和所述待分配任务执行结束后释放资源时;
在所述待分配任务的类型为所述需要资源的任务时,确定所述待分配任务的分配时机为添加所述待分配任务时。
可选地,所述方法还包括:
所述任务调度中心注册任务登记监听器和资源登记监听器,其中所述任务登记监听器用于监听任务登记节点,所述资源登记监听器用于监听资源登记节点。
可选地,所述任务调度指令中包括各所述待处理任务的标识信息,所述主控制中心根据任务调度指令,确定待执行的至少一个子任务,包括:
根据所述待处理任务的标识信息,获取所述待处理任务的参数信息;
根据所述参数信息将所述待处理任务拆分为至少一个所述子任务;
所述将满足执行条件的所述子任务分配至对应的目标处理中心,包括:
将满足执行条件的所述子任务和对应的参数信息分配至对应的目标处理中心。
可选地,所述处理中心中包括:控制模块和执行模块,所述子任务中包括至少一个任务节点;所述任务调度中心将满足执行条件的所述子任务分配至对应的目标处理中心之后,所述方法还包括:
所述目标处理中心中的控制模块将所述子任务中各所述任务节点依次放入任务消息队列;
所述执行模块获取所述任务消息队列中的所述任务节点并执行。
可选地,所述目标处理中心中的控制模块将所述子任务中各所述任务节点依次放入任务消息队列之前,所述方法还包括:
所述控制模块根据所述子任务的节点信息,构建所述任务消息队列和结果消息队列;
所述执行模块获取所述任务消息队列中的所述任务节点并执行之后,还包括:
所述执行模块执行所述任务节点后,将执行结果放入所述结果消息队列。
可选地,所述执行模块获取所述任务消息队列中的所述任务节点并执行,包括:
所述执行模块获取所述消息队列中的所述任务节点后,申请执行资源;
在申请所述执行资源成功时,执行所述任务节点;
执行所述任务节点结束后,释放所述执行资源;
在申请所述执行资源失败时,将所述任务节点放入资源等待队列,等待所述任务调度中心进行资源控制处理。
可选地,所述任务调度中心注册任务执行监听器,用于监听各所述任务节点的执行状态;所述执行所述任务节点结束后,释放所述执行资源,包括:
所述任务执行监听器监听到所述任务节点的执行状态为执行结束时,向所述任务调度中心发送所述执行状态;
所述任务调度中心根据所述执行状态,释放所述执行资源。
可选地,所述系统中还包括:心跳检测中心,其中:
所述心跳检测中心根据预设时间间隔,向所述任务调度中心发送心跳检测指令,并获取检测结果;所述检测结果用于指示所述任务调度中心是否健康。
可选地,所述控制模块在处理各所述子任务时,实时将执行所述子任务的流程执行内容记录至流程监控信息表。
可选地,所述任务调度中心为分布式任务调度中心。
第二方面,本申请另一实施例提供了一种批处理装置,所述装置包括:确定模块、发送模块和分配模块,其中:
所述确定模块,用于所述主控制中心根据所述任务调度中心发送的任务调度指令,确定待执行的至少一个子任务;
所述发送模块,用于所述任务调度中心获取所述主控制中心发送的各所述子任务;
所述分配模块,用于所述任务调度中心将满足执行条件的所述子任务分配至对应的目标处理中心;所述目标处理中心用于执行所述子任务。
可选地,所述确定模块,具体用于所述任务调度中心根据至少一个待分配任务的任务类型,确定各所述待分配任务的分配时机。
可选地,所述待分配任务的任务类型包括:需要资源的任务或不需要资源的任务;
所述确定模块,具体用于在所述待分配任务的类型为所述需要资源的任务时,确定所述待分配任务的分配时机为添加所述待分配任务,和所述待分配任务执行结束后释放资源时;在所述待分配任务的类型为所述需要资源的任务时,确定所述待分配任务的分配时机为添加所述待分配任务时。
可选地,所述装置还包括:注册模块,用于所述任务调度中心注册任务登记监听器和资源登记监听器,其中所述任务登记监听器用于监听任务登记节点,所述资源登记监听器用于监听资源登记节点。
可选地,所述装置还包括:获取模块和拆分模块,其中:
所述获取模块,用于根据所述待处理任务的标识信息,获取所述待处理任务的参数信息;
所述拆分模块,用于根据所述参数信息将所述待处理任务拆分为至少一个所述子任务;
所述分配模块,具体用于将满足执行条件的所述子任务和对应的参数信息分配至对应的目标处理中心。
可选地,所述装置还包括:放入模块,用于所述目标处理中心中的控制模块将所述子任务中各所述任务节点依次放入任务消息队列;
所述获取模块,具体用于所述执行模块获取所述任务消息队列中的所述任务节点并执行。
可选地,所述装置还包括:构建模块,用于所述控制模块根据所述子任务的节点信息,构建所述任务消息队列和结果消息队列;
所述放入模块,具体用于所述执行模块执行所述任务节点后,将执行结果放入所述结果消息队列。
可选地,所述装置还包括:申请模块、执行模块和释放模块,其中:
所述申请模块,用于所述执行模块获取所述消息队列中的所述任务节点后,申请执行资源;
所述执行模块,用于在申请所述执行资源成功时,执行所述任务节点;
所述释放模块,用于执行所述任务节点结束后,释放所述执行资源;
所述放入模块,具体用于在申请所述执行资源失败时,将所述任务节点放入资源等待队列,等待所述任务调度中心进行资源控制处理。
可选地,所述发送模块,具体用于所述任务执行监听器监听到所述任务节点的执行状态为执行结束时,向所述任务调度中心发送所述执行状态;
所述释放模块,具体用于所述任务调度中心根据所述执行状态,释放所述执行资源。
可选地,所述系统中还包括:心跳检测中心,其中:所述发送模块,具体用于所述心跳检测中心根据预设时间间隔,向所述任务调度中心发送心跳检测指令,并获取检测结果;所述检测结果用于指示所述任务调度中心是否健康。
可选地,所述装置还包括:记录模块,用于所述控制模块在处理各所述子任务时,实时将执行所述子任务的流程执行内容记录至流程监控信息表。
第三方面,本申请另一实施例提供了一种批处理设备,包括:处理器、存储介质和总线,所述存储介质存储有所述处理器可执行的机器可读指令,当批处理设备运行时,所述处理器与所述存储介质之间通过总线通信,所述处理器执行所述机器可读指令,以执行如上述第一方面任一所述方法的步骤。
第四方面,本申请另一实施例提供了一种存储介质,所述存储介质上存储有计算机程序,所述计算机程序被处理器运行时执行如上述第一方面任一所述方法的步骤。
本申请的有益效果是:采用本申请提供的批处理方法,在任务调度中心发送任务调度指令后,主控制中心根据任务调度指令确定至少一个子任务,并将确定的子任务发送至任务调度中心,任务调度中心将满足执行条件的各子任务分配至对应的目标处理中心进行处理,这样的批处理方式使得任务的分配、分解、调度和执行均有对应的中心去执行,不但保证了各步骤的有序执行,并且各中心为分布式部署的,从而提高了批处理的稳定性和可用性,保证了在执行批处理时,可以通过各中心的相互配合,实现完整的批处理功能。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本申请一实施例提供的批处理系统的结构示意图;
图2为本申请一实施例提供的批处理方法的流程示意图;
图3为本申请另一实施例提供的批处理方法的流程示意图;
图4为本申请一实施例提供的分布式调度树的结构示意图;
图5为本申请另一实施例提供的批处理方法的流程示意图;
图6为本申请一实施例提供的控制器处理逻辑的示意图;
图7为本申请一实施例提供的分布式多活批量系统架构的逻辑分层示意图;
图8为本申请一实施例提供的分布式多活批量系统架构的结构示意图;
图9为本申请一实施例提供的分布式多活批量系统任务处理的流程示意图;
图10为本申请一实施例提供的节点选取的流程示意图;
图11为本申请一实施例提供的批处理装置的结构示意图;
图12为本申请另一实施例提供的批处理装置的结构示意图;
图13为本申请一实施例提供的批处理设备的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。
通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
另外,本申请中使用的流程图示出了根据本申请的一些实施例实现的操作。应该理解,流程图的操作可以不按顺序实现,没有逻辑的上下文关系的步骤可以反转顺序或者同时实施。此外,本领域技术人员在本申请内容的指引下,可以向流程图添加一个或多个其他操作,也可以从流程图中移除一个或多个操作。
如下结合多个具体的应用示例,对本申请实施例所提供的一种批处理方法进行解释说明。图1为本申请一实施例提供的一种分布式批处理系统的结构示意图,图2为本申请一实施例提供的批处理方法的流程示意图,如图1所示,分布式批处理系统100中包括:任务调度中心110、至少一个控制中心120和至少一个处理中心130,在本申请的一个实施例中,例如控制中心120可以包括3个控制中心130,其中包括一个主控制中心和两个备控制中心,执行批处理方法时均为主控制中心执行,在主控制中心出现故障或其他异常情况时,可以通过选举或其他确定方式在两个备控制中心中重新确定一个控制中心为主控制中心;处理中心130与控制中心130可以集成在一个服务器上,每个控制中心130均有一个对应的处理中心130。
可选地,在本申请的一个实施例中,任务调度中心110可以为基于Zookeeper实现的,承载了AP服务器信息、配置信息、注册登记任务信息,并完成与执行单元、控制中心之间的同步,同时还负责任务分配、负载均衡与资源控制。
示例地,在一些可能的实施例中,当一台AP服务器首次纳管接入系统时,会在上面启动一个长驻的环境监听进程。它会在任务调度中心的servers节点下创建对应的/apn节点进行服务器注册,向任务调度中心报告自己的环境信息,环境信息例如可以包括:网络之间互连的协议(Internet Protocol,IP)地址信息、中央处理器(Central ProcessingUnit,CPU)信息、内存使用信息等,并将/apn节点状态置为可用。同时该环境监听会定时向任务调度中心反馈当前服务器的负载情况,比如CPU、内存使用率等。
控制中心120用于对分布式流程进行统一管控。主要可以包含下述功能:配置管理、分布式流程控制、实例化任务注册、任务监听、资源监听。
处理中心130用于执行各待执行任务,并返回执行结果。
如图2所示,该方法包括:
S201:主控制中心根据任务调度中心发送的任务调度指令,确定待执行的至少一个子任务。
示例地,在本申请的一个实施例中,主控制中心例如可以根据任务调度指令确定待执行任务,随后对待执行任务进行拆解,将待执行任务拆解为至少一个子任务。
S202:任务调度中心获取主控制中心发送的各子任务。
示例地,在本申请的一个实施例中,主控制中心可以根据各子任务的顺序、例如执行时间顺序、或拆解顺序发送至任务调度中心,应当理解上述实施例仅为示例性说明,具体发送方式可以根据用户需要灵活调整,并不以上述实施例给出的为限。
S203:任务调度中心将满足执行条件的子任务分配至对应的目标处理中心。
目标处理中心用于执行子任务,其中满足指令条件的子任务例如可以为执行时间到达该子任务的预设执行时间时,即为满足执行条件,执行条件并不局限于执行时间,具体执行条件包括的内容可以根据用户需要灵活调整,并不以上述实施例给出的为限。
示例地,在本申请的一个实施例中,任务分配作为任务调度中心的核心功能,负责对各待分配任务进行分配,S203之前,任务调度中心需要根据至少一个待分配任务的任务类型,确定各待分配任务的分配时机。其中,待分配任务的任务类型可以包括:需要资源的任务或不需要资源的任务;在待分配任务的类型为需要资源的任务时,确定待分配任务的分配时机为添加待分配任务,和待分配任务执行结束后释放资源时;在待分配任务的类型为需要资源的任务时,确定待分配任务的分配时机为添加待分配任务时。
示例地,在本申请的另一实施例中,任务调度中心还需要注册任务登记监听器和资源登记监听器,其中任务登记监听器用于监听任务登记节点,例如可以为节点/tasks/new,资源登记监听器用于监听资源登记节点,例如可以为/resources;当任务登记节点或资源登记节点下有新事件发生时,例如有CHILD_ADDED事件发生时,则表示当前有新任务登记,此时任务调度中心可以将任务登记节点下的所有待执行任务筛选出来,并根据负载均衡策略将各待执行任务分配至对应的目标处理中心执行,其中每个目标处理中心对应一个AP服务器。
采用本申请提供的批处理方法,在任务调度中心发送任务调度指令后,主控制中心根据任务调度指令确定至少一个子任务,并将确定的子任务发送至任务调度中心,任务调度中心将满足执行条件的各子任务分配至对应的目标处理中心进行处理,这样的批处理方式使得任务的分配、分解、调度和执行均有对应的中心去执行,不但保证了各步骤的有序执行,并且各中心为分布式部署的,从而提高了批处理的稳定性和可用性,保证了在执行批处理时,可以通过各中心的相互配合,实现完整的批处理功能。
可选地,在上述实施例的基础上,本申请实施例还可提供一种批处理方法,如下结合附图对上述方法的实现过程进行示例说明。图3为本申请另一实施例提供的一种批处理方法的流程示意图,如图3所示,S203之前,该方法还可包括:
S204:根据待处理任务的标识信息,获取待处理任务的参数信息。
可选地,在一些可能的实施例中,标识信息例如可以为各待处理任务的唯一流程号信息,则获取参数信息的方式例如可以为:主控制中心根据待处理任务的任务流程号,在预设数据库例如预设配置库中获取参数表,随后读取参数表,根据该流程号在参数表中获取该流程号在整个执行过程中需要使用的所有参数信息。
S205:根据参数信息将待处理任务拆分为至少一个子任务。
主控制中心根据获取的参数信息,将待处理任务实例化,并将实例化后的待处理任务拆解为至少一个子任务,其中,有的待处理任务拆解后会拆解为多个子任务,有的待处理任务拆解后仅会拆解为一个子任务,具体各待处理任务包括的子任务个数根据各待处理任务的实际情况确定,本申请在此不做任何限制。
示例地,在一些可能的实施例中,主控制中心根据获取的参数信息,实例化待处理任务,将有分库处理需求的待处理任务进行实例化拆分,并根据拆分后待处理任务组成一个完成的分布式调度树对象,随后对调度树对象进行解析,并按照调度时树中各子任务的执行顺序生成各子任务节点对象。图4为本申请一实施例提供的分布式调度树的结构示意图,如图4所示,经过实例化处理后的待处理任务对应的分布式调度树是一个只有三层树状结构的调度树,其第一层为根节点,第二层为各待处理任务,每个待处理任务均有其对应的任务流程号,例如图3中包括任务流程号为00、01、zy和zz的四个待处理任务,第三层为各待处理任务对应的子任务,例如图3中待处理任务00只包括一个00子节点,待处理任务01包括01-1、01-2……01-8、02-1、02-2……02-8等多个子节点,待处理任务zy仅包括一个zy子节点、待处理任务zz仅包括一个zz子节点,其每个叶节点即为一个子任务节点对象。
这种调度树的生成方式使得后续执行器被调度起来执行各子任务时,可以获取待处理任务中的各子任务信息,子任务信息例如可以包括执行子任务所需的所有参数信息,随后控制器会根据获取到的各子任务的参数信息,构造出相应的子流程调度树对象。
即实现根据分布式流程控制对分布式流程的整个执行过程进行管控。根据流程的配置信息,实例化流程任务,将有分库处理需求的流程进行实例化拆分,并组装成一个完整的分布式调度树对象,解析调度树,按照执行顺序生成任务节点对象。实施例配置如表1所示:
表1:
其中,表格中实例化字段内容为实例号列表。通过此列表中的实例号关联分片表,可以获取对应的分库名,即可获得处理分库的数据库链接配置。分片配置如表2所示:
表2:
对应的,S203可包括:
S206:将满足执行条件的子任务和对应的参数信息分配至对应的目标处理中心。
示例地,在本申请的一个实施例中,目标处理中心在执行任务的过程中,根据参数信息来获取各子任务在执行过程中需要使用到的参数。S106之前,任务调度中心还会在Zookeeper中存储该待处理任务的相关信息,相关信息例如可以为:AP服务器信息、参数信息与注册登记任务信息等,随后根据资源控制情况和负载均衡情况,将满足执行条件的子任务分配到目标处理中心中执行。
可选地,在上述实施例的基础上,本申请实施例还可提供一种批处理方法,如下结合附图对上述方法的实现过程进行示例说明。图5为本申请另一实施例提供的一种批处理方法的流程示意图,处理中心中包括:控制模块和执行模块,子任务中包括至少一个任务节点;如图5所示,S203之后,该方法还可包括:
S207:目标处理中心中的控制模块将子任务中各任务节点依次放入任务消息队列。
图6为本申请一实施例提供的控制器处理逻辑的示意图,如图6所示在本申请的一个实施例中,S207之前,控制模块根据子任务的节点信息,构建任务消息队列和结果消息队列;控制模块根据对调度树的解析,依次将待处理的各子流程放入任务消息队列中,等待执行模块执行。同时控制模块对结果消息队列中各子节点的状态变化进行监听,并根据不同的监听结果进行相应的后续操作,接收各子节点的执行结果,并根据执行结果更新调度树中各子节点的状态信息,并根据分布式流程控制生成下一步需要执行的子节点,直至调度树中的各子节点均执行完成。
S208:执行模块获取任务消息队列中的任务节点并执行。
为了将任务提交与任务执行的步骤分离开,本申请提供的处理中心中包括控制模块和执行模块,其中控制模块用于对各子任务进行提交,执行模块用于执行各子任务。执行模块负责完成对某一子任务的调用与执行。通过执行模块,也可以实现对各系统资源的访问控制。控制模块调度起执行模块,并传入任务消息队列与结果消息队列。执行模块启动后,会创建一个线程池,用以执行各子任务。若存在待处理任务,则执行模块读取任务队列,获取待执行的并发切片子任务对象,并提交给线程池执行;若无待处理任务时,则执行模块阻塞等待。执行模块在执行完各待处理任务对应的子任务后,执行模块会将各子任务的执行结果加入到结果消息队列中。此外,执行模块在执行过程中,会主动申请资源。当资源申请成功时,继续执行待执行的子任务,任务执行完毕后释放资源;资源申请失败时,会添加将自愿申请失败的子节点到资源等待队列,等待任务调度中心进行资源控制处理。
举例说明,在本申请的一个实施例中,各任务节点的执行方式例如可以为执行模块获取消息队列中的任务节点后,申请执行资源;在申请执行资源成功时,执行任务节点;执行任务节点结束后,释放执行资源;在申请执行资源失败时,将任务节点放入资源等待队列,等待任务调度中心进行资源控制处理。
可选地,在本申请的一个实施例中,任务调度中心注册任务执行监听器,用于监听各任务节点的执行状态,例如可以为监听/tasks/running节点下的任务执行完成事件;任务执行监听器监听到任务节点的执行状态为执行结束时,向任务调度中心发送执行状态;任务调度中心根据执行状态,调用资源回收功能,释放执行资源;其中各任务节点的执行状态会在任务的执行过程中不断更新,执行状态可以包括:执行结束、待执行和执行中,具体执行状态包括的内容可以根据用户需要灵活调整,并不以上述实施例给出的为限。
示例地,在本申请的一个实施例中,S208之后,该方法还包括述执行模块执行任务节点后,将执行结果放入结果消息队列。
主控制中心与控制模块在处理各待处理任务或子任务的过程中,会实时地将所有任务的执行情况登记入监控信息表,用作后续监控查询。监控信息表中包含了该执行任务在整个生命周期中的状态信息、描述信息以及报错日志信息等,例如可以包括:系统功能标识码、调度日期、任务号、翻牌周期、任务描述、任务状态、任务开始执行时间、任务结束执行时间、当前处理阶段、任务执行描述、报错日志描述、组件编号等,具体监控信息表中包括的内容可以根据用户需要灵活调整,并不以上述实施例给出的为限制。在本申请的一个实施例中,具体的表结构可以为表3所示。
表3:
在一些可能的实施例中,本申请的系统可以提供由Shell脚本语言编制的任务运维工具,来协助操作人员完成日常的运维工作。运行运维脚本,在运维人员依次设置好运维参数后,运维工具会根据参数构建调度树文件路径,并解析调度树文件。然后会提示需要处理的目标节点名称以及操作类型,操作命令输入格式为操作类型加节点号。操作类型例如可以支持如下操作:N-Next,从指定节点之后开始执行流程;R-Rerun,从指定节点继续执行流程;O-Force OK,将指定节点状态设置为已完成;H-Hold,将指定节点状态设置为挂起,表示暂时停止执行;F-Free,释放指定的挂起节点,并继续执行流程。
主控制中心与控制模块在执行的过程中,当遇到调度树的节点状态被运维工具调整后,会相应的配合完成对应的控制调整操作。
可选地,在本申请的一个实施例中,系统中还包括:心跳检测中心,其中:心跳检测中心根据预设时间间隔,向任务调度中心发送心跳检测指令,并获取检测结果;检测结果用于指示任务调度中心是否健康。
示例地,在一些可能的实施例中,任务调度中心中还包括容错控制功能,主要用于AP服务器宕机或者处理程序异常中断时,接管受影响的流程和任务,并进行相应的后续处理。容错控制功能可能包括的内容例如可以为表4所示:
表4:
图7为本申请一实施例提供的分布式多活批量系统架构的逻辑分层示意图,如图7所示,本申请提供分布式多活批量系统最外层是通过外部调度工具/平台完成批量任务的起始调度,在本申请的一个实施例中,例如可以为通过企业级自动调度和管控平台完成批量任务的起始调度。系统的第一层是分布式管理层,它主要完成了配置管理、分布式控制、资源控制、调度管理功能;系统的第二层是单元管理层,它主要实现单一批量执行单元上的处理功能,包括控制器、执行器、应用引擎和功能模块;系统的第三层即最下面的一层是数据层,它包括分库的关系数据库与相关的大数据服务;此外,系统还提供监控运维层,负责对批量任务的监控与运维控制。
图8为本申请一实施例提供的分布式多活批量系统架构的结构示意图,分布式多活批量系统中包括各如下组件:调度中心(即任务调度中心)、多个控制中心、多个环境监听中心、多个执行器和多个控制器,如图8所示,分布式多活批量系统中包括调度中心、三个控制中心、三个环境监听中心、三个控制器和三个执行器,其中控制中心中包括一个主控制中心和两个备控制中心,其中:
任务调度中心为基于Zookeeper实现的,承载了AP服务器信息、配置信息、注册登记任务信息,完成与执行单元、控制中心之间的同步,同时还负责任务分配、负载均衡与资源控制。
控制中心用于对分布式流程进行统一管控。主要包含以下几大功能:配置管理、分布式流程控制、实例化任务注册、任务监听、资源监听。
环境监听常驻于分布式集群中每一个可用的执行单元上,负责完成环境信息同步,心跳检测以及节点选举功能。
控制器负责完成对执行子流程内部处理的调度和控制。
执行器负责完成对某一功能模块的调用与执行。通过执行器,也会配合任务调度中心实现对各系统资源的访问控制。
图9为本申请一实施例提供的分布式多活批量系统任务处理的流程示意图,如图9所示,当调度平台发起批量任务调度后,控制中心会首先被执行并接收到任务流程号。随后控制中心会根据流程号,读取配置库中的参数表,并获取该流程在整个执行过程中需要使用到的所有参数信息。控制中心会根据配置信息,实例化流程任务,并拆解成若干个子流程任务,并将待执行子任务按顺序注册到任务调度中心。任务调度中心会在Zookeeper中存储AP服务器信息、配置信息与注册登记任务信息。接着,它会根据资源控制情况与负载均衡情况,将满足执行条件的子任务分配到某一批处理单元中执行。批处理单元中的单元管理模块被执行用于处理子任务。它使用单元控制器将子任务中的功能步骤依次放入任务队列,并通过单元执行器去执行。单元执行器调用应用基础功能模块完成功能步骤处理,并将处理结果通过结果队列反馈给单元控制器。整个任务执行过程,会通过监控运维组件来完成流程的监控与运维。
图10为本申请一实施例提供的节点选取的流程示意图,如图10所示,执行单元利用Zookeeper的功能完成Leader节点选举功能。任务调度中心与控制中心的配置监听模块都运行在Leader执行单元上。系统启动后,执行单元A和执行单元B开始监听,并发起主节点选取指令,随后进行主节点选举,若执行单元A选举成功,则确定执行单元A为主节点,执行单元B为从节点。
采用本申请提供的批处理方法,通过基于Zookeeper的分布式多活批量系统的架构设计,从而在在调度控制方面,实现分布式任务的并行调度与协调控制。在集群控制方面,实现集群可动态弹性扩容缩容。在任务控制方面,可以支持分布式任务生命周期控制,支持任务的续跑与重跑。在容错控制方面,可以保证任务分片一致性,完成自诊断并修复分布式不稳定造成的问题。在运维控制方面,可以实现统一监控运维。
下述结合附图对本申请所提供的批处理装置进行解释说明,该批处理装置可执行上述图1-图10任一批处理方法,其具体实现以及有益效果参照上述,如下不再赘述。
图11为本申请一实施例提供的批处理装置的结构示意图,如图11所示,该装置包括:确定模块301、发送模块302和分配模块303,其中:
确定模块301,用于主控制中心根据任务调度中心发送的任务调度指令,确定待执行的至少一个子任务。
发送模块302,用于任务调度中心获取主控制中心发送的各子任务。
分配模块303,用于任务调度中心将满足执行条件的子任务分配至对应的目标处理中心;目标处理中心用于执行子任务。
可选地,确定模块301,具体用于任务调度中心根据至少一个待分配任务的任务类型,确定各待分配任务的分配时机。
可选地,待分配任务的任务类型包括:需要资源的任务或不需要资源的任务;
确定模块301,具体用于在待分配任务的类型为需要资源的任务时,确定待分配任务的分配时机为添加待分配任务,和待分配任务执行结束后释放资源时;在待分配任务的类型为需要资源的任务时,确定待分配任务的分配时机为添加待分配任务时。
图12为本申请另一实施例提供的批处理装置的结构示意图,如图12所示,该装置还包括:注册模块304,用于任务调度中心注册任务登记监听器和资源登记监听器,其中任务登记监听器用于监听任务登记节点,资源登记监听器用于监听资源登记节点。
如图12所示,该装置还包括:获取模块305和拆分模块306,其中:
获取模块305,用于根据待处理任务的标识信息,获取待处理任务的参数信息;
拆分模块306,用于根据参数信息将待处理任务拆分为至少一个子任务;
分配模块303,具体用于将满足执行条件的子任务和对应的参数信息分配至对应的目标处理中心。
如图12所示,该装置还包括:放入模块307,用于目标处理中心中的控制模块将子任务中各任务节点依次放入任务消息队列;
获取模块305,具体用于执行模块获取任务消息队列中的任务节点并执行。
如图12所示,该装置还包括:构建模块308,用于控制模块根据子任务的节点信息,构建任务消息队列和结果消息队列;
放入模块307,具体用于执行模块执行任务节点后,将执行结果放入结果消息队列。
如图12所示,该装置还包括:申请模块309、执行模块310和释放模块311,其中:
申请模块309,用于执行模块获取消息队列中的任务节点后,申请执行资源;
执行模块310,用于在申请执行资源成功时,执行任务节点;
释放模块311,用于执行任务节点结束后,释放执行资源;
放入模块307,具体用于在申请执行资源失败时,将任务节点放入资源等待队列,等待任务调度中心进行资源控制处理。
可选地,发送模块302,具体用于任务执行监听器监听到任务节点的执行状态为执行结束时,向任务调度中心发送执行状态;
释放模块,具体用于任务调度中心根据执行状态,释放执行资源。
可选地,系统中还包括:心跳检测中心,其中:发送模块302,具体用于心跳检测中心根据预设时间间隔,向任务调度中心发送心跳检测指令,并获取检测结果;检测结果用于指示任务调度中心是否健康。
如图12所示,该装置还包括:记录模块312,用于控制模块在处理各子任务时,实时将执行子任务的流程执行内容记录至流程监控信息表。
上述装置用于执行前述实施例提供的方法,其实现原理和技术效果类似,在此不再赘述。
以上这些模块可以是被配置成实施以上方法的一个或多个集成电路,例如:一个或多个特定集成电路(Application Specific Integrated Circuit,简称ASIC),或,一个或多个微处理器(digital singnal processor,简称DSP),或,一个或者多个现场可编程门阵列(Field Programmable Gate Array,简称FPGA)等。再如,当以上某个模块通过处理元件调度程序代码的形式实现时,该处理元件可以是通用处理器,例如中央处理器(CentralProcessing Unit,简称CPU)或其它可以调用程序代码的处理器。再如,这些模块可以集成在一起,以片上系统(system-on-a-chip,简称SOC)的形式实现。
图13为本申请一实施例提供的批处理设备的结构示意图,该批处理设备可以集成于终端设备或者终端设备的芯片。
该批处理设备包括:处理器601、存储介质602和总线603。
处理器601用于存储程序,处理器601调用存储介质602存储的程序,以执行上述图1-图10对应的方法实施例。具体实现方式和技术效果类似,这里不再赘述。
可选地,本申请还提供一种程序产品,例如存储介质,该存储介质上存储有计算机程序,包括程序,该程序在被处理器运行时执行上述方法对应的实施例。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(英文:processor)执行本申请各个实施例所述方法的部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(英文:Read-Only Memory,简称:ROM)、随机存取存储器(英文:Random Access Memory,简称:RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
Claims (15)
1.一种批处理方法,其特征在于,应用于分布式批处理系统中,所述系统中包括:任务调度中心、至少一个控制中心和至少一个处理中心,所述至少一个控制中心中包括:主控制中心,所述方法包括:
所述主控制中心根据所述任务调度中心发送的任务调度指令,确定待执行的至少一个子任务;
所述任务调度中心获取所述主控制中心发送的各所述子任务;
所述任务调度中心将满足执行条件的所述子任务分配至对应的目标处理中心;所述目标处理中心用于执行所述子任务。
2.如权利要求1所述的方法,其特征在于,所述任务调度中心将满足执行条件的所述子任务分配至对应的目标处理中心之前,所述方法还包括:
所述任务调度中心根据至少一个待分配任务的任务类型,确定各所述待分配任务的分配时机。
3.如权利要求2所述的方法,其特征在于,所述待分配任务的任务类型包括:需要资源的任务或不需要资源的任务;
在所述待分配任务的类型为所述需要资源的任务时,确定所述待分配任务的分配时机为添加所述待分配任务,和所述待分配任务执行结束后释放资源时;
在所述待分配任务的类型为所述需要资源的任务时,确定所述待分配任务的分配时机为添加所述待分配任务时。
4.如权利要求2所述的方法,其特征在于,所述方法还包括:
所述任务调度中心注册任务登记监听器和资源登记监听器,其中所述任务登记监听器用于监听任务登记节点,所述资源登记监听器用于监听资源登记节点。
5.如权利要求1所述的方法,其特征在于,所述任务调度指令中包括各所述待处理任务的标识信息,所述主控制中心根据任务调度指令,确定待执行的至少一个子任务,包括:
根据所述待处理任务的标识信息,获取所述待处理任务的参数信息;
根据所述参数信息将所述待处理任务拆分为至少一个所述子任务;
所述将满足执行条件的所述子任务分配至对应的目标处理中心,包括:
将满足执行条件的所述子任务和对应的参数信息分配至对应的目标处理中心。
6.如权利要求1所述的方法,其特征在于,所述处理中心中包括:控制模块和执行模块,所述子任务中包括至少一个任务节点;所述任务调度中心将满足执行条件的所述子任务分配至对应的目标处理中心之后,所述方法还包括:
所述目标处理中心中的控制模块将所述子任务中各所述任务节点依次放入任务消息队列;
所述执行模块获取所述任务消息队列中的所述任务节点并执行。
7.如权利要求6所述的方法,其特征在于,所述目标处理中心中的控制模块将所述子任务中各所述任务节点依次放入任务消息队列之前,所述方法还包括:
所述控制模块根据所述子任务的节点信息,构建所述任务消息队列和结果消息队列;
所述执行模块获取所述任务消息队列中的所述任务节点并执行之后,还包括:
所述执行模块执行所述任务节点后,将执行结果放入所述结果消息队列。
8.如权利要求6所述的方法,其特征在于,所述执行模块获取所述任务消息队列中的所述任务节点并执行,包括:
所述执行模块获取所述消息队列中的所述任务节点后,申请执行资源;
在申请所述执行资源成功时,执行所述任务节点;
执行所述任务节点结束后,释放所述执行资源;
在申请所述执行资源失败时,将所述任务节点放入资源等待队列,等待所述任务调度中心进行资源控制处理。
9.如权利要求8所述的方法,其特征在于,所述任务调度中心注册任务执行监听器,用于监听各所述任务节点的执行状态;所述执行所述任务节点结束后,释放所述执行资源,包括:
所述任务执行监听器监听到所述任务节点的执行状态为执行结束时,向所述任务调度中心发送所述执行状态;
所述任务调度中心根据所述执行状态,释放所述执行资源。
10.如权利要求1所述的方法,其特征在于,所述系统中还包括:心跳检测中心,其中:
所述心跳检测中心根据预设时间间隔,向所述任务调度中心发送心跳检测指令,并获取检测结果;所述检测结果用于指示所述任务调度中心是否健康。
11.如权利要求6所述的方法,其特征在于,所述控制模块在处理各所述子任务时,实时将执行所述子任务的流程执行内容记录至流程监控信息表。
12.如权利要求1所述的方法,其特征在于,所述任务调度中心为分布式任务调度中心。
13.一种批处理装置,其特征在于,所述装置包括:确定模块、发送模块和分配模块,其中:
所述确定模块,用于主控制中心根据所述任务调度中心发送的任务调度指令,确定待执行的至少一个子任务;
所述发送模块,用于所述任务调度中心获取所述主控制中心发送的各所述子任务;
所述分配模块,用于所述任务调度中心将满足执行条件的所述子任务分配至对应的目标处理中心;所述目标处理中心用于执行所述子任务。
14.一种批处理设备,其特征在于,所述设备包括:处理器、存储介质和总线,所述存储介质存储有所述处理器可执行的机器可读指令,当所述批处理设备运行时,所述处理器与所述存储介质之间通过总线通信,所述处理器执行所述机器可读指令,以执行上述权利要求1-12任一项所述的方法。
15.一种存储介质,其特征在于,所述存储介质上存储有计算机程序,所述计算机程序被处理器运行时执行上述权利要求1-12任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110165844.1A CN112948077A (zh) | 2021-02-06 | 2021-02-06 | 批处理方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110165844.1A CN112948077A (zh) | 2021-02-06 | 2021-02-06 | 批处理方法、装置、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112948077A true CN112948077A (zh) | 2021-06-11 |
Family
ID=76243017
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110165844.1A Pending CN112948077A (zh) | 2021-02-06 | 2021-02-06 | 批处理方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112948077A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113342532A (zh) * | 2021-06-25 | 2021-09-03 | 深圳前海微众银行股份有限公司 | 基于Zookeeper的分布式任务调度方法及系统 |
CN113886089A (zh) * | 2021-10-21 | 2022-01-04 | 上海勃池信息技术有限公司 | 一种任务处理方法、装置、系统、设备及介质 |
-
2021
- 2021-02-06 CN CN202110165844.1A patent/CN112948077A/zh active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113342532A (zh) * | 2021-06-25 | 2021-09-03 | 深圳前海微众银行股份有限公司 | 基于Zookeeper的分布式任务调度方法及系统 |
CN113886089A (zh) * | 2021-10-21 | 2022-01-04 | 上海勃池信息技术有限公司 | 一种任务处理方法、装置、系统、设备及介质 |
CN113886089B (zh) * | 2021-10-21 | 2024-01-26 | 上海勃池信息技术有限公司 | 一种任务处理方法、装置、系统、设备及介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10761829B2 (en) | Rolling version update deployment utilizing dynamic node allocation | |
US10412158B2 (en) | Dynamic allocation of stateful nodes for healing and load balancing | |
Dong et al. | Autonomia: an autonomic computing environment | |
CA2802361C (en) | Method and system for workload distributing and processing across a network of replicated virtual machines | |
US20080030764A1 (en) | Server parallel aggregation | |
US9218231B2 (en) | Diagnosing a problem of a software product running in a cloud environment | |
Moreno-Vozmediano et al. | Orchestrating the deployment of high availability services on multi-zone and multi-cloud scenarios | |
CN113569987A (zh) | 模型训练方法和装置 | |
WO2019210580A1 (zh) | 访问请求处理方法、装置、计算机设备和存储介质 | |
CN106330987A (zh) | 动态负荷均衡方法 | |
CN113886089B (zh) | 一种任务处理方法、装置、系统、设备及介质 | |
CN112948077A (zh) | 批处理方法、装置、设备及存储介质 | |
WO2022105138A1 (zh) | 去中心化的任务调度方法、装置、设备及介质 | |
US20100121904A1 (en) | Resource reservations in a multiprocessor computing environment | |
CN108268314A (zh) | 一种多线程任务并发处理的方法 | |
CN111190691A (zh) | 适用于虚拟机的自动迁移方法、系统、装置及存储介质 | |
CN113110930A (zh) | 决策问题的云化解决方法、系统、服务器及存储介质 | |
CN106293911A (zh) | 分布式调度系统、方法 | |
CN105827744A (zh) | 云存储平台的数据处理方法 | |
US20100122261A1 (en) | Application level placement scheduler in a multiprocessor computing environment | |
CN111835809B (zh) | 工单消息分配方法、装置、服务器及存储介质 | |
CN117453357A (zh) | 节点任务调度方法、装置、计算机设备及存储介质 | |
CN110134533B (zh) | 一种可批量调度数据的系统及方法 | |
US9323509B2 (en) | Method and system for automated process distribution | |
CN113220480B (zh) | 分布式的数据任务跨云调度系统及方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |