CN110287033A - 批量任务处理方法、装置、系统、设备和可读存储介质 - Google Patents
批量任务处理方法、装置、系统、设备和可读存储介质 Download PDFInfo
- Publication number
- CN110287033A CN110287033A CN201910593876.4A CN201910593876A CN110287033A CN 110287033 A CN110287033 A CN 110287033A CN 201910593876 A CN201910593876 A CN 201910593876A CN 110287033 A CN110287033 A CN 110287033A
- Authority
- CN
- China
- Prior art keywords
- subtask
- server
- processing
- task
- information list
- 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
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/5061—Partitioning or combining of resources
- G06F9/5066—Algorithms for mapping a plurality of inter-dependent sub-tasks onto a plurality of physical CPUs
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供一种批量任务处理方法、装置、系统、设备和可读存储介质,应用于包括资源共享的所述主服务器和多个从服务器的分布式批量任务处理系统,主服务器获取待处理的多个子任务;根据各所述从服务器的任务处理能力,获取子任务信息列表,其中,所述子任务信息列表指示了用于处理各子任务的从服务器、各子任务的处理进度以及各子任务的配置信息;将所述子任务信息列表同步给所述多个从服务器,以使多个从服务器根据所述任务信息列表对所述多个子任务进行处理,从而主服务器可以通过修改子任务信息列表,来实现对所有子任务的灵活分配,数据交互小,降低了子任务调度的处理负荷,提高了子任务分配的效率。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及一种批量任务处理方法、装置、系统、设备和可读存储介质。
背景技术
随着计算机技术的提高,终端服务或者应用系统的开发越来越复杂,服务器经常需要处理批量任务,而提升批量任务的处理效率影响到终端服务质量或应用系统的开发效率的提高。但随着应用系统和任务数据量的增加,处理任务所需要的时间也越来越长,尤其对于计算密集型任务,单个服务器的处理器CPU运行达到饱和后已经无法再提升处理效率,因此如何提升批量任务处理的效率是亟需解决的问题之一。
现有技术中,通常是构建分布式的服务器处理系统,通过手工分配或者系统分配的方式,将批量任务分发到多台子服务器上进行处理,等待所有子服务器处理结束后得到批量任务的处理结果。
然而,现有的批量任务处理方法对批量任务的调度方式较为固定,处理效率不够高。
发明内容
本发明实施例提供一种批量任务处理方法、装置、系统、设备和可读存储介质,提高了批量任务处理的效率和灵活性。
本发明实施例的第一方面,提供一种批量任务处理方法,应用于分布式批量任务处理系统中的主服务器,所述分布式批量任务处理系统包括资源共享的所述主服务器和多个从服务器,所述方法包括:
获取待处理的多个子任务,其中,所述子任务是由待处理的批量任务分解得到的,所述子任务包括配置信息、任务资源和可执行文件;
根据各所述从服务器的任务处理能力,获取子任务信息列表,其中,所述子任务信息列表指示了各所述子任务的处理进度、用于处理各所述子任务的从服务器以及各所述子任务的配置信息;
将所述子任务信息列表同步给所述多个从服务器,以使所述多个从服务器根据所述任务信息列表对所述多个子任务进行处理。
本发明实施例的第二方面,提供一种批量任务处理方法,应用于分布式批量任务处理系统中的从服务器,所述分布式批量任务处理系统包括资源共享的主服务器和多个所述从服务器,所述方法包括:
获取子任务信息列表,其中,所述子任务信息列表指示了多个子任务的处理进度、用于处理各所述子任务的从服务器以及各所述子任务的配置信息;
根据所述子任务信息列表,确定待处理的目标子任务,以及所述目标子任务的配置信息;
获取所述目标子任务并根据所述配置信息进行配置和处理。
本发明实施例的第三方面,提供一种批量任务处理装置,应用于分布式批量任务处理系统中的主服务器,所述分布式批量任务处理系统包括资源共享的所述主服务器和多个从服务器,所述装置包括:
分解模块,用于获取待处理的批量任务,并将所述批量任务分解为多个子任务;
分配模块,用于根据各所述从服务器的任务处理能力,获取子任务信息列表,其中,所述子任务信息列表指示了各所述子任务的处理进度、用于处理各所述子任务的从服务器以及各所述子任务的配置信息;
同步模块,用于将所述子任务信息列表同步给所述多个从服务器,以使所述多个从服务器根据所述任务信息列表对所述多个子任务进行处理。
本发明实施例的第四方面,提供一种批量任务处理装置,应用于分布式批量任务处理系统中的从服务器,所述分布式批量任务处理系统包括资源共享的主服务器和多个所述从服务器,所述装置包括:
接收模块,用于获取子任务信息列表,其中,所述子任务信息列表指示了多个子任务的处理进度、用于处理各所述子任务的从服务器以及各所述子任务的配置信息;
确定模块,用于根据所述子任务信息列表,确定待处理的目标子任务,以及所述目标子任务的配置信息;
处理模块,用于获取所述目标子任务并根据所述配置信息进行配置和处理。
本发明实施例的第五方面,提供一种分布式批量任务处理系统,包括资源共享的主服务器和多个所述从服务器;
所述主服务器用于执行本发明第一方面及第一方面各种可能设计的所述批量任务处理方法;
所述从服务器用于执行本发明第二方面及第二方面各种可能设计的所述批量任务处理方法。
本发明实施例的第六方面,提供一种设备,包括:存储器、处理器以及计算机程序,所述计算机程序存储在所述存储器中,所述处理器运行所述计算机程序执行本发明第一方面及第一方面各种可能设计的所述批量任务处理方法。
本发明实施例的第七方面,提供一种可读存储介质,所述可读存储介质中存储有计算机程序,所述计算机程序被处理器执行时用于实现本发明第一方面及第一方面各种可能设计的所述批量任务处理方法。
本发明提供的一种批量任务处理方法、装置、系统、设备和可读存储介质,应用于包括资源共享的所述主服务器和多个从服务器的分布式批量任务处理系统,主服务器获取待处理的多个子任务,其中,所述子任务是由待处理的批量任务分解得到的;根据各所述从服务器的任务处理能力,获取子任务信息列表,其中,所述子任务信息列表指示了各所述子任务的处理进度、用于处理各所述子任务的从服务器以及各所述子任务的配置信息;将所述子任务信息列表同步给所述多个从服务器,以使所述多个从服务器根据所述任务信息列表对所述多个子任务进行处理,从而主服务器可以通过修改子任务信息列表,来实现对所有子任务的灵活分配,数据交互小,降低了子任务调度的处理负荷,提高了子任务分配的效率。
附图说明
图1是本发明实施例提供的一种分布式批量任务处理系统示意图;
图2是本发明实施例提供的一种批量任务处理方法流程示意图;
图3是本发明实施例提供的另一种批量任务处理方法流程示意图;
图4是本发明实施例提供的一种应用Map-Reduce计算模型的子任务处理流程示例;
图5是本发明实施例提供的一种批量任务处理装置结构示意图;
图6是本发明实施例提供的另一种批量任务处理装置结构示意图;
图7是本发明实施例提供的一种设备的硬件结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
应当理解,在本发明的各种实施例中,各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
应当理解,在本发明中,“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
应当理解,在本发明中,“多个”是指两个或两个以上。“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。“包含A、B和C”、“包含A、B、C”是指A、B、C三者都包含,“包含A、B或C”是指包含A、B、C三者之一,“包含A、B和/或C”是指包含A、B、C三者中任1个或任2个或3个。
应当理解,在本发明中,“与A对应的B”、“与A相对应的B”、“A与B相对应”或者“B与A相对应”,表示B与A相关联,根据A可以确定B。根据A确定B并不意味着仅仅根据A确定B,还可以根据A和/或其他信息确定B。A与B的匹配,是A与B的相似度大于或等于预设的阈值。
取决于语境,如在此所使用的“若”可以被解释成为“在……时”或“当……时”或“响应于确定”或“响应于检测”。
应当理解,在本发明中,raft协议,是现有的一种分布式一致性协议。作用是在若干台机器上同步数据,保证数据完整并且一致。
应当理解,在本发明中,MapReduce计算模型,是基于并行Map操作和归纳Reduce操作的一种处理流程,Map操作是对所有任务处理一次,任务之间独立。Reduce操作是将任务依次处理前面的结果作为后面的输入,任务之间有依赖关系。
下面以具体地实施例对本发明的技术方案进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例不再赘述。
本申请中的批量任务处理,包括不限于:图片批量压缩系统、代码编译构建系统、美术资源生成或回归系统等应用场景中的批量任务的处理。
在一些游戏图片资源压缩系统的应用场景中,美术制作的图片格式一般都是PNG格式,需要根据各图像应用系统专有的纹理格式,将PNG格式压缩转换成windows系统要求的DDS格式、Android系统要求的ECT2格式或者IOS系统要求的PVR格式等。
在一些编译构建系统的应用场景中,C++大型工程编译相当耗时,编译过程分为单文件编译和生成文件的链接(将多个单文件编译结果合并成exe文件或者库文件),在单文件编译过程中,可以将项目和文件之间的依赖组织成拓扑图,然后并行到多台机器上同时编译。
在一些游戏时装资源回归系统的应用场景中,时装资源更新之后,需要用新资源批量生成游戏内全部的例如数百万张时装效果图,并与前一个版本的图片进行比较来判断新资源是否影响到旧时装。
对于CPU密集型的批量任务,单机已经无法提升其处理效率,只能通过分布式运行的方式,将任务发到多台机器上执行来提升效率。而现有的处理框架很难兼顾分布式容错、配置简单、调度灵活等目标,从而不够灵活难以用来实现通用的批量任务处理。
为了解决现有的批量任务处理灵活性差的问题,本发明实施例提供了一种一种批量任务处理方法、装置、系统、设备和可读存储介质,应用于包括资源共享的所述主服务器和多个从服务器的分布式批量任务处理系统,主服务器通过配置子任务信息列表实现对多个从服务器的子任务分配,其中,所述子任务信息列表指示了各所述子任务的处理进度、用于处理各所述子任务的从服务器以及各所述子任务的配置信息,实现了对所有子任务的灵活分配,数据交互小,降低了子任务调度的处理负荷,提高了子任务分配的效率。
参见图1,是本发明实施例提供的一种分布式批量任务处理系统示意图。图1中的分布式批量任务处理系统,包括资源共享的主服务器1和多个从服务器2。可以理解为,主服务器1和多个从服务器2具有相同或相近的运行环境,其中,主服务器1是在多个服务器中通过raft协议选举出来的,而其余的服务器则作为从服务器2。其中,主服务器1和多个从服务器2之间可以通过云存储共享,或者共享磁盘的方式,实现资源共享。例如,主服务器1获取到多个子任务的资源并存储,那么与主服务器1资源共享的从服务器2也得到了这些子任务的资源。例如,游戏开发中美术资源生成和处理类任务,需要大批量渲染或者压缩生成图片资源,是一种典型的计算密集型批量任务。分布式批量任务处理系统例如就可以是一种美术资源生成和处理系统。图1所示的主服务器1和从服务器2用于执行下面各种实施例中任一所述的批量任务处理方法,主服务器1通过发出并维护子任务信息列表,对从服务器2需要处理的任务进行配置,从而实现子任务的调度处理,交互数据小,提高了子任务分配的灵活性和效率。
参见图2,是本发明实施例提供的一种批量任务处理方法流程示意图,
图2所示方法的执行主体可以是软件和/或硬件装置。例如,主服务器和多个从服务器的硬件设备,或者是内置于主服务器和多个从服务器中的软件模块。
图2所示的方法包括步骤S101至步骤S105,具体如下:
S101,主服务器获取待处理的多个子任务,其中,所述子任务是由待处理的批量任务分解得到的,所述子任务包括配置信息、任务资源和可执行文件。
例如,可以将待处理的批量任务上传至主服务器或者任一从服务器,然后由接收到批量任务的服务器将这些待处理的批量任务存储到共享磁盘或共享网络中,从而实现资源共享,并使主服务器获取到待处理的批量任务。其中,在主服务器获取待处理的批量任务之前,可以通过Raft协议在所有服务器中选出一台作为主服务器,并在主服务器与所述多个从服务器之间,以Raft协议实现信息的同步和容错处理。本实施例是基于Raft分布式一致协议的同步配置及主服务器选择,主服务器原本就是通过Raft协议在从服务器中选出来的,如果主服务器出现故障,由于Raft分布式一致协议能保证配置不会丢失,剩余的从服务器可以通过重现选出新的主服务器继续处理批量任务,由此实现容错,提高批量任务处理的可靠性。
在一些实施例中,可以根据运行环境和依赖将批量任务可以拆分为多个子任务的配置信息、任务资源和可执行文件。其中,配置信息至少包含任务执行描述、相关参数和命令,任务资源是指子任务处理时需要的初始资源。例如,游戏时装资源回归系统的应用场景中,分解得到的任务资源是游戏角色的3D美术资源。又例如,编译构建系统的应用场景中,分解得到的任务资源是源代码文件。可执行文件是计算机能够识别的任务代码文件,用于使任务执行单元根据子任务的可执行文件,而执行根据任务配置读取相应的资源去执行命令生成对应的输出文件的动作。其中,输出文件是指子任务最终需要输出的目标文件。
S102,主服务器根据各所述从服务器的任务处理能力,获取子任务信息列表,其中,所述子任务信息列表指示了各所述子任务的处理进度、用于处理各所述子任务的从服务器以及各所述子任务的配置信息。
例如,将各种子任务抽象成具有唯一性的子任务标识(task_id)和属性信息(task_conf),单个子任务(例如游戏美术资源处理子任务)都可以用任务标识作为Key、用属性信息作为Value形成Key-Value的描述形式。每个子任务的属性信息包括该子任务的处理进度、用于处理该子任务的从服务器以及该子任务的配置信息。主服务器将所有子任务的Key-Value组成子任务信息列表。其中,每个子任务的任务资源和可执行文件都存储在分布式批量任务处理系统的共享资源中,并且可以用任务标识作为Key进行索引查找得到。
在一些实施例中,主服务器获取子任务信息列表,可以包括动态调整子任务信息列表的过程。例如,主服务器周期性地获取各所述从服务器的动态处理能力值,以及未执行的子任务,其中,所述未执行的子任务例如是没开始执行的子任务,或者是执行失败重试的子任务,未执行的子任务的所述处理进度为未执行。其中动态处理能力值例如是服务器的任务处理速度。例如,主服务在预设的调整周期中,获取各所述从服务器的任务处理速度;根据所述任务处理速度,确定各所述从服务器的动态处理能力值。任务处理速度例如是从服务器在每个调整周期中处理的子任务数量,处理的子任务数量越多,则从服务器的任务处理速度越快。由于从服务器的运行环境可能改变,例如原本还在运行其非批量任务,那么可能导致从服务器处理子任务的速度较慢,在其他非批量任务处理完毕后,从服务器处理子任务的速度提高,可以承接更多的子任务。主服务器以所述动态处理能力值为分配权重,确定各所述从服务器分配处理的所述未执行的子任务。动态处理能力值体现了从服务器的动态处理能力,例如是任务处理速度,那么,对于动态处理能力值大的从服务器可以分配更多的子任务,对于动态处理能力值小的从服务器可以分配更少的子任务,从而实现从服务器之间的负载均衡。主服务器根据各所述未执行的子任务对应的所述从服务器,调整所述子任务信息列表,并将调整后的子任务信息列表同步给所述多个从服务器。其中,若主服务器确定一个或多个从服务器出现宕机或其他故障,那么这些从服务器的动态处理能力值确定为0,将不为其分配子任务,并将原本分配给这些从服务器的子任务转移给其他从服务器。
在一些实施例中,在上述任一实施例的基础上,主服务器获取子任务信息列表,还可以包括创建子任务信息列表的过程。例如,主服务器获取各所述从服务器预设的初始处理能力值。初始处理能力值例如可以是从服务器预设的计算能力值,或者是由从服务器的配置参数确定的,或者是根据从服务器中预置的处理能力评价模型实时计算得到的。主服务器以所述初始处理能力值为分配权重,确定各所述从服务器分配处理的子任务。与前面实施例中以动态处理能力值为分配权重的执行方式类似,在此不做赘述。主服务器根据各所述子任务的处理进度和各所述子任务对应的所述从服务器,创建子任务信息列表。例如,在子任务信息列表中写入所有子任务的任务标识,并UI每个任务标识写入处理进度、哪个从服务器负责处理以及运行该子任务需要的配置信息。首次创建子任务信息列表时,所有子任务的处理进度都为未执行。
S103,主服务器将所述子任务信息列表同步给所述多个从服务器。
主服务器创建或调整得到子任务信息列表后,将子任务信息列表同步给所述多个从服务器,以使所述多个从服务器根据所述任务信息列表对所述多个子任务进行处理。具体的同步方式,可以是基于Raft协议的同步方式;或者分别发送给所有从服务器;或者将子任务信息列表存储在共享资源中,以使所有从服务器主动读取。
例如,使用基于Raft协议的Key-Value分布式一致存储,将批量任务拆成各不影响的子任务后,将各子任务的包括配置信息的属性信息保存到分布式Key-Value存储(简称K-V)中,并据此建立子任务信息列表。部分子任务或者部分从服务器的失败不会影响整个批量任务的处理过程,主服务器可以通过对子任务信息列表的调整,使其他的从服务器根据子任务信息列表的K-V存储内容中,读取子任务的配置信息而快速重试子任务,并且会缓存中间结果(例如处理进度)到子任务信息列表中,最大限度减少因错误恢复导致的重复计算。
S104,从服务器根据所述子任务信息列表,确定待处理的目标子任务,以及所述目标子任务的配置信息。
子任务信息列表规定了哪些子任务由哪些从服务器负责处理,从服务器从接收到的子任务信息列表中,获取目标子任务的配置信息,进行执行目标子任务之前运行环境的配置,并从共享资源中读取目标子任务的任务资源和可执行文件,以完成子任务执行之前的准备。
S105,从服务器获取所述目标子任务并根据所述配置信息进行配置和处理。
下面以游戏时装资源回归系统的应用场景为例进行说明。游戏时装资源回归系统的任务是,每次发布新时装时,都生成一次所有角色穿所有新时装的渲染效果图,并基于预设的图片对比算法,将新生成的图片和预存储的旧版本的图片进行对比确定差异是否大于阈值(如果有大差异,说明可能是美术阶段可能修改到了旧的资源)。最后将新生成的图片上传到某台服务器保存。主服务器获取到的批量任务例如是批量时装渲染任务。主服务器将角色编号(role_id)和时装编号(cloth_id)组合形成role_id-cloth_id的字符串拼接,作为子任务标识。主服务器将需要生成的全部时装列表(所有排列组合形成的一系列role_id-cloth_id)作为子任务信息列表,列表中每一项为一个时装渲染任务。然后,主服务器对每个子任务写入配置信息,配置信息中包含生成这个图片的流程处理步骤和信息。例如,配置信息可以包括:步骤a.图片生成,执行输出角色穿新时装的渲染效果图所需要的命令和参数;步骤b.图片提交,描述渲染效果图应该复制到某个路径或者提交到某个服务器的提交执行命令。子任务信息列表还包含:当前子任务是在哪个从服务器上处理,以及当前子任务的处理进度:流程处理步骤中步骤a(图片生成)、步骤b(图片提交)是否处理成功。
上述实施例中,子任务的流程处理步骤中的步骤a图片生成操作为Map操作,步骤b图片提交为Reduce操作,一个子任务中的步骤a(图片生成)和步骤b(图片提交)可以由同一台从服务器执行,也可以是不同从服务器协同执行。
本实施例提供的一种批量任务处理方法,应用于包括资源共享的所述主服务器和多个从服务器的分布式批量任务处理系统,主服务器获取待处理的批量任务,并将所述批量任务分解为多个子任务;根据各所述从服务器的任务处理能力,获取子任务信息列表,其中,所述子任务信息列表指示了各所述子任务的处理进度、用于处理各所述子任务的从服务器以及各所述子任务的配置信息;将所述子任务信息列表同步给所述多个从服务器,以使所述多个从服务器根据所述任务信息列表对所述多个子任务进行处理,从而主服务器可以通过修改子任务信息列表,来实现对所有子任务的灵活分配,数据交互小,降低了子任务调度的处理负荷,提高了子任务分配的效率。
在上述实施例的基础上,获取批量任务,并将批量任务分解得到多个子任务可以是由主服务器执行的,也可以是由从服务器执行的,下面以主服务器执行任务分解为例进行举例。其中,还可以引入Map-Reduce计算模型,将Map操作和Reduce操作分配到不同的从服务器上执行,进一步提高批量任务处理效率。参见图3,是本发明实施例提供的另一种批量任务处理方法流程示意图,图3所示的方法包括步骤S201至步骤S210,具体如下:
S201,主服务器获取待处理的批量任务,并将所述批量任务分解为至少一个独立任务。
以上实施例中述批量时装渲染任务作为批量任务举例,主服务器可以将批量时装渲染任务分解为多个独立的时装渲染任务。至少一个独立任务之间不存在依赖关系。但是每个独立任务中又需要通过多个任务步骤来执行。
S202,主服务器根据所述独立任务的多个任务步骤,将各所述独立任务分解为一个或多个子任务,其中,每个所述任务步骤对应1个所述子任务。
例如,1个时装渲染任务包括步骤a(图片生成)和步骤b(图片提交),那么可以将步骤a(图片生成)作为一个子任务A,将步骤b(图片提交)作为另一个子任务B。
S203,主服务器获取各所述子任务的操作类型,其中,每个所述子任务对应的所述操作类型包括并行Map类型或归纳Reduce类型。
例如,子任务A的图片生成操作为Map类型,子任务B的图片提交为Reduce类型。
S204,主服务器根据所述操作类型和所述多个任务步骤的执行顺序,获取各所述子任务的配置信息。
主服务器在子任务A和子任务B的配置信息中,写入依赖的子任务及执行顺序(例如先执行子任务A,再执行子任务B),以便执行子任务B的从服务器在开始执行之前先根据执行顺序确定子任务A已处理结束。
上述步骤S201至步骤S204是以主服务器执行作为举例,可以理解为是被确定为主服务器之前执行的,也可以是被确定为主服务器之后执行的。并且,上述步骤S201至步骤S204还可以不限定为由主服务器执行,例如可以是由多个从服务器中的任一执行的。例如,从服务器获取待处理的批量任务;将所述批量任务分解为至少一个独立任务;根据所述独立任务的多个任务步骤,将各所述独立任务分解为一个或多个子任务,其中,每个所述任务步骤对应1个所述子任务;获取各所述子任务的操作类型,其中,每个所述子任务对应的所述操作类型包括并行Map类型或归纳Reduce类型;根据所述操作类型和所述多个任务步骤的执行顺序,获取各所述子任务的配置信息。主服务器和从服务器是资源共享的,任一服务器执行上述步骤S201至步骤S204都能通过资源共享实现子任务的多服务器共享以及配置的同步。
S205,主服务器根据各所述从服务器的任务处理能力以及各所述子任务的所述操作类型,获取子任务信息列表,其中,每个所述从服务器用于执行所述Map类型的子任务,或者所述Reduce类型的子任务,所述子任务信息列表指示了各所述子任务的处理进度、用于处理各所述子任务的从服务器以及各所述子任务的配置信息。
参见图4,是本发明实施例提供的一种应用Map-Reduce计算模型的子任务处理流程示例。在图4所示的实施例中,主服务例如可以对少量的从服务器设置为执行Reduce类型的子任务,而其余从服务器均执行Map类型的子任务。主服务器结合从服务器的任务处理能力和执行的任务类型,对子任务进行分配。每个独立任务都可以有自己的流程步骤,主服务器可基于Map-Reduce计算模型组织各个子任务步骤之间的依赖和顺序,来分布到不同的从服务器,从而进一步提高批量任务的处理效率。
S206,主服务器将所述子任务信息列表同步给所述多个从服务器。
S207,从服务器根据所述子任务信息列表,确定待处理的目标子任务,以及所述目标子任务的配置信息。
例如,从服务器可以通过raft协议获取子任务信息列表。不管是主服务器还是从服务器出问题,通过Raft协议都能立刻发现,如果出现故障的是主服务器,从服务器通过Raft协议会从现有的从服务器中重新选出一个从服务器作为新的主服务器。由于所有子任务的处理进度已经记录到子任务信息列表中,新的主服务器可让其余从服务器重新执行原本自己负责的子任务。
在一些实施例中,从服务器在确定所述主服务器故障时,向其他从服务器发送第一投票信息;获取其他从服务器发出的第二投票信息。例如,主服务器周期性向所有从服务器发送心跳信号,如果从服务器一段时间未收到主服务器的心跳信号则确定主服务器故障,重新选举新的主服务器。根据所述第一投票信息和所述第二投票信息,确定新的主服务器,其中,所述新的主服务器为所述多个从服务器之一,由此实现基于raft协议的容错。
S208,从服务器获取所述目标子任务并根据所述配置信息进行配置和处理。
图3所示步骤S206至步骤S208的实现方式和技术效果,与图2所示步骤S103至步骤S105类似,此处不再赘述。
S209,从服务器在确定所述目标子任务处理结束时,将所述子任务信息列表中与所述目标子任务对应的处理进度更新为处理结束。
例如,每个从服务器,可根据子任务特点来分配功能,从而选择性执行Map操作或Reduce操作,并将处理进度写入子任务信息列表。
S210,从服务器通过raft协议向所述主服务器和其他所述从服务器同步更新后的所述子任务信息列表。
在上述批量时装渲染任务的实施例中,每个子任务可通过目标图片是否生成来判断是否执行结束,子任务信息列表中任务进度不断由从服务器更新,以便主服务器根据子任务信息列表,以及从服务器的初始处理能力值和/或动态处理能力值分配子任务和重试失败子任务。
本实施例通过引入Map-Reduce计算模型,将Map操作和Reduce操作分配到不同的从服务器上执行,进一步提高批量任务处理效率,并且,子任务信息列表中任务进度由从服务器不断地更新并同步给主服务器和其他从服务器,以便主服务器通过子任务信息列表分配子任务。
参见图5,是本发明实施例提供的一种批量任务处理装置结构示意图。图5所示的批量任务处理装置50,应用于图1所示分布式批量任务处理系统中的主服务器1,所述批量任务处理装置50包括:
分解模块51,用于获取待处理的批量任务,并将所述批量任务分解为多个子任务。
分配模块52,用于根据各所述从服务器的任务处理能力,获取子任务信息列表,其中,所述子任务信息列表指示了各所述子任务的处理进度、用于处理各所述子任务的从服务器以及各所述子任务的配置信息。
同步模块53,用于将所述子任务信息列表同步给所述多个从服务器,以使所述多个从服务器根据所述任务信息列表对所述多个子任务进行处理。
本实施例提供的一种批量任务处理装置,通过获取待处理的批量任务,并将所述批量任务分解为多个子任务;根据各所述从服务器的任务处理能力,获取子任务信息列表,其中,所述子任务信息列表指示了各所述子任务的处理进度、用于处理各所述子任务的从服务器以及各所述子任务的配置信息;将所述子任务信息列表同步给所述多个从服务器,以使所述多个从服务器根据所述任务信息列表对所述多个子任务进行处理,从而主服务器可以通过修改子任务信息列表,来实现对所有子任务的灵活分配,数据交互小,降低了子任务调度的处理负荷,提高了子任务分配的效率。
可选地,所述分配模块52,用于周期性地获取各所述从服务器的动态处理能力值,以及未执行的子任务,其中,所述未执行的子任务的所述处理进度为未执行;以所述动态处理能力值为分配权重,确定各所述从服务器分配处理的所述未执行的子任务;根据各所述未执行的子任务对应的所述从服务器,调整所述子任务信息列表;将调整后的子任务信息列表同步给所述多个从服务器。
可选地,所述分配模块52,用于在预设的调整周期中,获取各所述从服务器的任务处理速度;根据所述任务处理速度,确定各所述从服务器的动态处理能力值。
可选地,所述分配模块52,用于获取各所述从服务器预设的初始处理能力值;以所述初始处理能力值为分配权重,确定各所述从服务器分配处理的子任务;根据各所述子任务的处理进度和各所述子任务对应的所述从服务器,创建子任务信息列表。
可选地,分解模块51,用于将所述批量任务分解为至少一个独立任务;根据所述独立任务的多个任务步骤,将各所述独立任务分解为一个或多个子任务,其中,每个所述任务步骤对应1个所述子任务;获取各所述子任务的操作类型,其中,每个所述子任务对应的所述操作类型包括并行Map类型或归纳Reduce类型;根据所述操作类型和所述多个任务步骤的执行顺序,获取各所述子任务的配置信息。
可选地,所述分配模块52,还用于根据各所述从服务器的任务处理能力以及各所述子任务的所述操作类型,获取子任务信息列表,其中,每个所述从服务器用于执行所述Map类型的子任务,或者所述Reduce类型的子任务。
参见图6,是本发明实施例提供的另一种批量任务处理装置结构示意图。图6所示的批量任务处理装置60,应用于图1所示分布式批量任务处理系统中的从服务器2,所述批量任务处理装置60包括:
接收模块61,用于获取子任务信息列表,其中,所述子任务信息列表指示了多个子任务的处理进度、用于处理各所述子任务的从服务器以及各所述子任务的配置信息。
确定模块62,用于根据所述子任务信息列表,确定待处理的目标子任务,以及所述目标子任务的配置信息。
处理模块63,用于获取所述目标子任务并根据所述配置信息进行配置和处理。
图6所示实施例的批量任务处理装置对应地可用于执行图2所示方法实施例中从服务器执行的步骤,其实现原理和技术效果类似,此处不再赘述。
可选地,处理模块63,用于所述获取所述目标子任务并根据所述配置信息进行配置和处理之后,在确定所述目标子任务处理结束时,将所述子任务信息列表中与所述目标子任务对应的处理进度更新为处理结束;通过raft协议向所述主服务器和其他所述从服务器同步更新后的所述子任务信息列表。
可选地,接收模块61,用于通过raft协议获取子任务信息列表。
本发明还提供了一种如图1所示的分布式批量任务处理系统,包括资源共享的主服务器1和多个所述从服务器2。所述主服务器1用于执行图2至图3所示方法实施例中主服务器执行的批量任务处理方法。所述从服务器2用于执行图2至图3所示方法实施例中从服务器执行的批量任务处理方法。
参见图7,是本发明实施例提供的一种设备的硬件结构示意图,该设备70包括:处理器71、存储器72和计算机程序;其中
存储器72,用于存储所述计算机程序,该存储器还可以是闪存(flash)。所述计算机程序例如是实现上述方法的应用程序、功能模块等。
处理器71,用于执行所述存储器存储的计算机程序,以实现上述批量任务处理方法中主服务器或从服务器执行的各个步骤。具体可以参见前面方法实施例中的相关描述。
可选地,存储器72既可以是独立的,也可以跟处理器71集成在一起。
当所述存储器72是独立于处理器71之外的器件时,所述设备还可以包括:
总线73,用于连接所述存储器72和处理器71。
本发明还提供一种可读存储介质,所述可读存储介质中存储有计算机程序,所述计算机程序被处理器执行时用于实现上述的各种实施方式提供的批量任务处理方法。
其中,可读存储介质可以是计算机存储介质,也可以是通信介质。通信介质包括便于从一个地方向另一个地方传送计算机程序的任何介质。计算机存储介质可以是通用或专用计算机能够存取的任何可用介质。例如,可读存储介质耦合至处理器,从而使处理器能够从该可读存储介质读取信息,且可向该可读存储介质写入信息。当然,可读存储介质也可以是处理器的组成部分。处理器和可读存储介质可以位于专用集成电路(ApplicationSpecific Integrated Circuits,简称:ASIC)中。另外,该ASIC可以位于用户设备中。当然,处理器和可读存储介质也可以作为分立组件存在于通信设备中。可读存储介质可以是只读存储器(ROM)、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
本发明还提供一种程序产品,该程序产品包括执行指令,该执行指令存储在可读存储介质中。设备的至少一个处理器可以从可读存储介质读取该执行指令,至少一个处理器执行该执行指令使得设备实施上述的各种实施方式提供的批量任务处理方法。
在上述设备的实施例中,应理解,处理器可以是中央处理单元(英文:CentralProcessing Unit,简称:CPU),还可以是其他通用处理器、数字信号处理器(英文:DigitalSignal Processor,简称:DSP)、专用集成电路(英文:Application Specific IntegratedCircuit,简称:ASIC)等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本发明所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
Claims (16)
1.一种批量任务处理方法,其特征在于,应用于分布式批量任务处理系统中的主服务器,所述分布式批量任务处理系统包括资源共享的所述主服务器和多个从服务器,所述方法包括:
获取待处理的多个子任务,其中,所述子任务是由待处理的批量任务分解得到的,所述子任务包括配置信息、任务资源和可执行文件;
根据各所述从服务器的任务处理能力,获取子任务信息列表,其中,所述子任务信息列表指示了各所述子任务的处理进度、用于处理各所述子任务的从服务器以及各所述子任务的配置信息;
将所述子任务信息列表同步给所述多个从服务器,以使所述多个从服务器根据所述任务信息列表对所述多个子任务进行处理。
2.根据权利要求1所述的方法,其特征在于,所述根据各所述从服务器的任务处理能力,获取子任务信息列表,包括:
周期性地获取各所述从服务器的动态处理能力值,以及未执行的子任务,其中,所述未执行的子任务的所述处理进度为未执行;
以所述动态处理能力值为分配权重,确定各所述从服务器分配处理的所述未执行的子任务;
根据各所述未执行的子任务对应的所述从服务器,调整所述子任务信息列表;
将调整后的子任务信息列表同步给所述多个从服务器。
3.根据权利要求2所述的方法,其特征在于,所述周期性地获取各所述从服务器的动态处理能力值,包括:
在预设的调整周期中,获取各所述从服务器的任务处理速度;
根据所述任务处理速度,确定各所述从服务器的动态处理能力值。
4.根据权利要求1至3任一所述的方法,其特征在于,所述根据各所述从服务器的任务处理能力,获取子任务信息列表,还包括:
获取各所述从服务器预设的初始处理能力值;
以所述初始处理能力值为分配权重,确定各所述从服务器分配处理的子任务;
根据各所述子任务的处理进度和各所述子任务对应的所述从服务器,创建子任务信息列表。
5.根据权利要求1至3任一所述的方法,其特征在于,所述获取待处理的多个子任务,包括:
获取待处理的批量任务;
将所述批量任务分解为至少一个独立任务;
根据所述独立任务的多个任务步骤,将各所述独立任务分解为一个或多个子任务,其中,每个所述任务步骤对应1个所述子任务;
获取各所述子任务的操作类型,其中,每个所述子任务对应的所述操作类型包括并行Map类型或归纳Reduce类型;
根据所述操作类型和所述多个任务步骤的执行顺序,获取各所述子任务的配置信息。
6.根据权利要求5所述的方法,其特征在于,所述根据各所述从服务器的任务处理能力,获取子任务信息列表,还包括:
根据各所述从服务器的任务处理能力以及各所述子任务的所述操作类型,获取子任务信息列表,其中,每个所述从服务器用于执行所述Map类型的子任务,或者所述Reduce类型的子任务。
7.一种批量任务处理方法,其特征在于,应用于分布式批量任务处理系统中的从服务器,所述分布式批量任务处理系统包括资源共享的主服务器和多个所述从服务器,所述方法包括:
获取子任务信息列表,其中,所述子任务信息列表指示了多个子任务的处理进度、用于处理各所述子任务的从服务器以及各所述子任务的配置信息;
根据所述子任务信息列表,确定待处理的目标子任务,以及所述目标子任务的配置信息;
获取所述目标子任务并根据所述配置信息进行配置和处理。
8.根据权利要求7所述的方法,其特征在于,所述获取所述目标子任务并根据所述配置信息进行配置和处理之后,还包括:
在确定所述目标子任务处理结束时,将所述子任务信息列表中与所述目标子任务对应的处理进度更新为处理结束;
通过raft协议向所述主服务器和其他所述从服务器同步更新后的所述子任务信息列表。
9.根据权利要求7或8所述的方法,其特征在于,所述获取子任务信息列表,包括:
通过raft协议获取子任务信息列表。
10.根据权利要求7所述的方法,其特征在于,还包括:
在确定所述主服务器故障时,向其他从服务器发送第一投票信息;
获取其他从服务器发出的第二投票信息;
根据所述第一投票信息和所述第二投票信息,确定新的主服务器,其中,所述新的主服务器为所述多个从服务器之一。
11.根据权利要求7所述的方法,其特征在于,还包括:
获取待处理的批量任务;
将所述批量任务分解为至少一个独立任务;
根据所述独立任务的多个任务步骤,将各所述独立任务分解为一个或多个子任务,其中,每个所述任务步骤对应1个所述子任务;
获取各所述子任务的操作类型,其中,每个所述子任务对应的所述操作类型包括并行Map类型或归纳Reduce类型;
根据所述操作类型和所述多个任务步骤的执行顺序,获取各所述子任务的配置信息。
12.一种批量任务处理装置,其特征在于,应用于分布式批量任务处理系统中的主服务器,所述分布式批量任务处理系统包括资源共享的所述主服务器和多个从服务器,所述装置包括:
分解模块,用于获取待处理的批量任务,并将所述批量任务分解为多个子任务;
分配模块,用于根据各所述从服务器的任务处理能力,获取子任务信息列表,其中,所述子任务信息列表指示了各所述子任务的处理进度、用于处理各所述子任务的从服务器以及各所述子任务的配置信息;
同步模块,用于将所述子任务信息列表同步给所述多个从服务器,以使所述多个从服务器根据所述任务信息列表对所述多个子任务进行处理。
13.一种批量任务处理装置,其特征在于,应用于分布式批量任务处理系统中的从服务器,所述分布式批量任务处理系统包括资源共享的主服务器和多个所述从服务器,所述装置包括:
接收模块,用于获取子任务信息列表,其中,所述子任务信息列表指示了多个子任务的处理进度、用于处理各所述子任务的从服务器以及各所述子任务的配置信息;
确定模块,用于根据所述子任务信息列表,确定待处理的目标子任务,以及所述目标子任务的配置信息;
处理模块,用于获取所述目标子任务并根据所述配置信息进行配置和处理。
14.一种分布式批量任务处理系统,其特征在于,包括资源共享的主服务器和多个所述从服务器;
所述主服务器用于执行如权利要求1至6任一所述的批量任务处理方法;
所述从服务器用于执行如权利要求7至11任一所述的批量任务处理方法。
15.一种设备,其特征在于,包括:存储器、处理器以及计算机程序,所述计算机程序存储在所述存储器中,所述处理器运行所述计算机程序执行权利要求1至11任一所述的批量任务处理方法。
16.一种可读存储介质,其特征在于,所述可读存储介质中存储有计算机程序,所述计算机程序被处理器执行时用于实现权利要求1至11任一所述的批量任务处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910593876.4A CN110287033A (zh) | 2019-07-03 | 2019-07-03 | 批量任务处理方法、装置、系统、设备和可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910593876.4A CN110287033A (zh) | 2019-07-03 | 2019-07-03 | 批量任务处理方法、装置、系统、设备和可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110287033A true CN110287033A (zh) | 2019-09-27 |
Family
ID=68020398
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910593876.4A Pending CN110287033A (zh) | 2019-07-03 | 2019-07-03 | 批量任务处理方法、装置、系统、设备和可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110287033A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110955516A (zh) * | 2019-10-30 | 2020-04-03 | 深圳供电局有限公司 | 批量任务处理方法、装置、计算机设备和存储介质 |
CN112380024A (zh) * | 2021-01-18 | 2021-02-19 | 天道金科股份有限公司 | 一种基于分布式计数的线程调度方法 |
CN112783634A (zh) * | 2019-11-06 | 2021-05-11 | 长鑫存储技术有限公司 | 任务处理系统、方法及计算机可读存储介质 |
CN113377863A (zh) * | 2020-03-10 | 2021-09-10 | 阿里巴巴集团控股有限公司 | 数据同步方法、装置、电子设备及计算机可读存储介质 |
CN115640102A (zh) * | 2022-11-16 | 2023-01-24 | 武汉大学 | 基于分布式任务的可重复执行式计算方法、系统和介质 |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7028297B2 (en) * | 2000-11-17 | 2006-04-11 | Aristos Logic Corporation | System and method of scalable transaction processing |
CN101359295A (zh) * | 2007-08-01 | 2009-02-04 | 阿里巴巴集团控股有限公司 | 一种批量任务调度分配方法及系统 |
CN104699542A (zh) * | 2015-03-31 | 2015-06-10 | 北京奇艺世纪科技有限公司 | 任务处理方法及系统 |
CN104731647A (zh) * | 2015-03-31 | 2015-06-24 | 北京奇艺世纪科技有限公司 | 任务处理方法及系统 |
CN106227596A (zh) * | 2016-07-13 | 2016-12-14 | 百度在线网络技术(北京)有限公司 | 用于任务调度服务器的任务监控方法和装置 |
CN107395458A (zh) * | 2017-07-31 | 2017-11-24 | 东软集团股份有限公司 | 系统监控方法及装置 |
CN107766129A (zh) * | 2016-08-17 | 2018-03-06 | 北京金山云网络技术有限公司 | 一种任务处理方法、装置及系统 |
CN108280080A (zh) * | 2017-01-06 | 2018-07-13 | 阿里巴巴集团控股有限公司 | 一种数据同步方法、装置以及电子设备 |
CN108287756A (zh) * | 2018-01-25 | 2018-07-17 | 联动优势科技有限公司 | 一种处理任务的方法及装置 |
CN108549583A (zh) * | 2018-04-17 | 2018-09-18 | 成都致云科技有限公司 | 大数据处理方法、装置、服务器及可读存储介质 |
CN109614209A (zh) * | 2018-10-26 | 2019-04-12 | 阿里巴巴集团控股有限公司 | 一种任务处理方法、应用服务器及系统 |
CN109766319A (zh) * | 2018-12-27 | 2019-05-17 | 网易(杭州)网络有限公司 | 压缩任务处理方法、装置、存储介质及电子设备 |
-
2019
- 2019-07-03 CN CN201910593876.4A patent/CN110287033A/zh active Pending
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7028297B2 (en) * | 2000-11-17 | 2006-04-11 | Aristos Logic Corporation | System and method of scalable transaction processing |
CN101359295A (zh) * | 2007-08-01 | 2009-02-04 | 阿里巴巴集团控股有限公司 | 一种批量任务调度分配方法及系统 |
CN104699542A (zh) * | 2015-03-31 | 2015-06-10 | 北京奇艺世纪科技有限公司 | 任务处理方法及系统 |
CN104731647A (zh) * | 2015-03-31 | 2015-06-24 | 北京奇艺世纪科技有限公司 | 任务处理方法及系统 |
CN106227596A (zh) * | 2016-07-13 | 2016-12-14 | 百度在线网络技术(北京)有限公司 | 用于任务调度服务器的任务监控方法和装置 |
CN107766129A (zh) * | 2016-08-17 | 2018-03-06 | 北京金山云网络技术有限公司 | 一种任务处理方法、装置及系统 |
CN108280080A (zh) * | 2017-01-06 | 2018-07-13 | 阿里巴巴集团控股有限公司 | 一种数据同步方法、装置以及电子设备 |
CN107395458A (zh) * | 2017-07-31 | 2017-11-24 | 东软集团股份有限公司 | 系统监控方法及装置 |
CN108287756A (zh) * | 2018-01-25 | 2018-07-17 | 联动优势科技有限公司 | 一种处理任务的方法及装置 |
CN108549583A (zh) * | 2018-04-17 | 2018-09-18 | 成都致云科技有限公司 | 大数据处理方法、装置、服务器及可读存储介质 |
CN109614209A (zh) * | 2018-10-26 | 2019-04-12 | 阿里巴巴集团控股有限公司 | 一种任务处理方法、应用服务器及系统 |
CN109766319A (zh) * | 2018-12-27 | 2019-05-17 | 网易(杭州)网络有限公司 | 压缩任务处理方法、装置、存储介质及电子设备 |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110955516A (zh) * | 2019-10-30 | 2020-04-03 | 深圳供电局有限公司 | 批量任务处理方法、装置、计算机设备和存储介质 |
CN110955516B (zh) * | 2019-10-30 | 2023-03-03 | 深圳供电局有限公司 | 批量任务处理方法、装置、计算机设备和存储介质 |
CN112783634A (zh) * | 2019-11-06 | 2021-05-11 | 长鑫存储技术有限公司 | 任务处理系统、方法及计算机可读存储介质 |
CN112783634B (zh) * | 2019-11-06 | 2022-04-26 | 长鑫存储技术有限公司 | 任务处理系统、方法及计算机可读存储介质 |
CN113377863A (zh) * | 2020-03-10 | 2021-09-10 | 阿里巴巴集团控股有限公司 | 数据同步方法、装置、电子设备及计算机可读存储介质 |
CN113377863B (zh) * | 2020-03-10 | 2022-04-29 | 阿里巴巴集团控股有限公司 | 数据同步方法、装置、电子设备及计算机可读存储介质 |
CN112380024A (zh) * | 2021-01-18 | 2021-02-19 | 天道金科股份有限公司 | 一种基于分布式计数的线程调度方法 |
CN112380024B (zh) * | 2021-01-18 | 2021-05-25 | 天道金科股份有限公司 | 一种基于分布式计数的线程调度方法 |
CN115640102A (zh) * | 2022-11-16 | 2023-01-24 | 武汉大学 | 基于分布式任务的可重复执行式计算方法、系统和介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110287033A (zh) | 批量任务处理方法、装置、系统、设备和可读存储介质 | |
CN110727731B (zh) | 区块链网络中加入节点的方法和区块链系统 | |
US11704144B2 (en) | Creating virtual machine groups based on request | |
EP3701666B1 (en) | System and method for deleting node in blockchain network | |
Nawab et al. | Dpaxos: Managing data closer to users for low-latency and mobile applications | |
Sharma et al. | A complete survey on software architectural styles and patterns | |
CN108881512B (zh) | Ctdb的虚拟ip均衡分配方法、装置、设备及介质 | |
US9807152B2 (en) | Distributed processing device and distributed processing system as well as distributed processing method | |
TWI692692B (zh) | 用於元組圖形程式之子圖內最佳化之方法 | |
CN110704438B (zh) | 一种区块链中布隆过滤器的生成方法及装置 | |
EP3442201A1 (en) | Cloud platform construction method and cloud platform | |
CN112988344A (zh) | 分布式批量任务调度方法、装置、设备及存储介质 | |
CN110944067B (zh) | 一种负载均衡方法和服务器 | |
CN110532069A (zh) | 一种分布式事务提交方法及装置 | |
CN111078119A (zh) | 一种数据重建方法、系统、装置及计算机可读存储介质 | |
US10489213B2 (en) | Execution of a method at a cluster of nodes | |
CN110704382B (zh) | 文件部署方法、装置、服务器及存储介质 | |
US20040103138A1 (en) | Multi-leader distributed system | |
CN110502460B (zh) | 数据处理的方法和节点 | |
CN111953760B (zh) | 数据同步方法、装置、多活系统及存储介质 | |
CN114817411B (zh) | 分布式图学习方法和装置 | |
CN111800181B (zh) | 一种确定卫星异质信息网络节点重要度的方法及装置 | |
CN112055057B (zh) | 一种Web系统动态扩展的方法及系统和设备 | |
JPWO2017145899A1 (ja) | 管理システム、テスト方法及びプログラム | |
CN115145714A (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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20190927 |