CN105912399A - 一种任务处理方法、装置及系统 - Google Patents
一种任务处理方法、装置及系统 Download PDFInfo
- Publication number
- CN105912399A CN105912399A CN201610211175.6A CN201610211175A CN105912399A CN 105912399 A CN105912399 A CN 105912399A CN 201610211175 A CN201610211175 A CN 201610211175A CN 105912399 A CN105912399 A CN 105912399A
- Authority
- CN
- China
- Prior art keywords
- node
- processing
- task
- module
- subtasks
- 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.)
- Granted
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 17
- 238000000034 method Methods 0.000 claims abstract description 432
- 238000012545 processing Methods 0.000 claims abstract description 396
- 238000013507 mapping Methods 0.000 claims abstract description 52
- 230000008569 process Effects 0.000 claims description 412
- 238000009826 distribution Methods 0.000 claims description 24
- 230000004044 response Effects 0.000 claims description 11
- 230000011218 segmentation Effects 0.000 claims description 10
- 230000015572 biosynthetic process Effects 0.000 claims description 9
- 238000011112 process operation Methods 0.000 claims description 4
- 230000009286 beneficial effect Effects 0.000 description 16
- 238000010586 diagram Methods 0.000 description 10
- 238000004364 calculation method Methods 0.000 description 8
- 230000007246 mechanism Effects 0.000 description 7
- 238000004590 computer program Methods 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 230000004048 modification Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 238000013073 enabling process Methods 0.000 description 2
- 238000003860 storage Methods 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 241001269238 Data Species 0.000 description 1
- 235000012364 Peperomia pellucida Nutrition 0.000 description 1
- 240000007711 Peperomia pellucida Species 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 230000032683 aging Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
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/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
-
- 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
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)
- Multi Processors (AREA)
Abstract
本发明公开了一种任务处理方法、装置及系统,用以提升集群的处理效率。方法包括:当获取到预设服务器发布的穷举任务时,获取与本地连接的所有处理节点的处理速度;根据处理节点的处理速度将穷举任务分割为多个一级子任务,一级子任务的数目与处理节点的数目相同;建立处理节点与一级子任务的一对一映射关系;根据映射关系将一级子任务分配给相应的处理节点;当接收到第一处理节点发送的处理结果时,遍历所有未完成一级子任务的处理节点的处理进度以确定处理进度最慢的第二处理节点;将第二处理节点未处理完的一级子任务中的至少部分任务分配给第一处理节点。采用本公开所提供的方法,使集群中的资源能够被充分利用,提升了集群的处理效率。
Description
技术领域
本发明涉及互联网技术领域,特别涉及一种任务处理方法、装置及系统。
背景技术
随着科学技术的发展,计算机所要处理的任务越来越复杂,有些计算密集型应用,如天气预报、核试验模拟等,需要计算机有非常强的运算处理能力,现有的设备中,一般的大型机也不具备这样的运算处理能力,这样的情况下,计算机集群技术应用而生,集群技术通过集中几十台甚至更多的计算机组成了一个计算机组,由于该计算机组集中了组中所有计算机的运算能力,从而具备了计算密集型应用所需要的运算处理能力。
通常情况下,集群中都具有负载均衡机制,使得任务可以在计算机集群中尽可能平均地分摊处理。每个节点都需承担一定的任务,当有新任务产生时,将任务分配给各个节点,以实现负载均衡。通常情况下,对于集群中任务的分配,是根据节点的数量将任务平均分配给每个节点。
然而,这样的任务分配方式,并未考虑到节点运算处理能力的差异,当有些节点运算处理能力较强,有些节点运算处理能力较弱时,如果采用这样的任务分配方式,就会导致有些节点已经将分配的任务处理完毕,有些节点还需要很长时间,因而,集群中就会出现一部分节点处于空闲状态,另外一部分节点仍处于处理状态,集群的资源没有充分利用,效率不高,因而,如何充分利用集群中的资源,提升集群的处理效率,是一亟待解决的技术问题。
发明内容
本发明提供一种任务处理方法、装置及系统,用以充分利用集群中的资源,提升集群的处理效率。
本发明提供一种任务处理方法,包括:
当获取到预设服务器发布的穷举任务时,获取与本地连接的所有处理节点的处理速度;
根据所述处理节点的处理速度将所述穷举任务分割为多个一级子任务,所述一级子任务的数目与所述处理节点的数目相同;
建立所述处理节点与所述一级子任务的一对一映射关系;
根据所述映射关系将所述一级子任务分配给相应的处理节点;
当接收到第一处理节点发送的处理结果时,遍历所有未完成所述一级子任务的处理节点的处理进度以确定处理进度最慢的第二处理节点;
将所述第二处理节点未处理完的一级子任务中的至少部分任务分配给所述第一处理节点。
本发明的有益效果在于:通过处理节点的处理速度将穷举任务分割为多个一级子任务,并为每个处理节点分配与其处理速度相应的一级子任务,从而保证每个处理节点对一级子任务的处理时间大致相同,并且当第一处理节点任务处理完毕时,可将处理进度最慢的第二处理节点未处理完的一级子任务中的至少部分任务分配给第一处理节点,从而使集群中的资源能够被充分利用,提升了集群的处理效率。
在一个实施例中,所述根据所述处理节点的处理速度将所述穷举任务分割为多个一级子任务,包括:
根据计算每个处理节点的处理速度与所有处理节点的总处理速度的比值得到多个第一比值;
根据所述多个第一比值将所述穷举任务分割为多个一级子任务,所述一级子任务的最大穷举次数与所述穷举任务的最大穷举次数的第二比值与所述第一比值一一对应;
所述建立所述处理节点与所述一级子任务的一对一映射关系,包括:
建立所述第一比值对应的处理节点和与所述第一比值相同的第二比值对应的一级子任务的映射关系。
本实施例的有益效果在于:处理节点的处理速度占总比例的比值等同于其处理的一级子任务的最大穷举次数占总穷举次数的比值,从而使得每一个处理节点分配到与其处理速度相应的一级子任务。
在一个实施例中,所述将所述第二处理节点未处理完的任务中的至少部分任务分配给所述第一处理节点,包括:
将所述第二处理节点未处理完的任务全部分配给所述第一处理节点;
或者
计算所述第一处理节点和第二处理节点处理速度的第三比值;
根据所述第三比值将所述第二处理节点未处理完的任务分别分配给所述第一处理节点和所述第二处理节点。
本实施例的有益效果在于:通过将第二处理节点未处理完的任务全部分配给第一处理节点,从而将处理速度最慢的第二处理节点的任务交给处理速度最快且空闲的第一处理节点来处理,加快了任务处理速度;或者根据第一处理节点和第二处理节点处理速度的比值将第二处理节点未处理完的任务分别分配各第一处理节点和第二处理节点,进一步加快了任务处理速度。
在一个实施例中,所述方法还包括:
周期性检测所有处理节点的运行状态;
当检测到目标处理节点无响应或接收到所述目标处理节点反馈的任务失败的通知消息时,判断所述目标处理节点是否有正在处理的一级子任务;
当所述目标处理节点有正在处理的一级子任务时,将所述一级子任务分配给所述目标处理节点之外的其他处理节点。
本实施例的有益效果在于:在目标处理节点无响应或者任务失败时,将该目标节点正在处理的一级子任务分配给其他处理节点,从而通过周期性检测处理节点的运行状态和接收任务失败的通知消息,避免由于处理节点障碍导致的任务无法完成的情况。
本发明还提供一种任务处理装置,包括:
获取模块,用于当获取到预设服务器发布的穷举任务时,获取与本地连接的所有处理节点的处理速度;
分割模块,用于根据所述处理节点的处理速度将所述穷举任务分割为多个一级子任务,所述一级子任务的数目与所述处理节点的数目相同;
建立模块,用于建立所述处理节点与所述一级子任务的一对一映射关系;
第一分配模块,用于根据所述映射关系将所述一级子任务分配给相应的处理节点;
确定模块,用于当接收到第一处理节点发送的处理结果时,遍历所有未完成所述一级子任务的处理节点的处理进度以确定处理进度最慢的第二处理节点;
第二分配模块,用于将所述第二处理节点未处理完的一级子任务中的至少部分任务分配给所述第一处理节点。
本发明还提供一种任务处理方法,包括:
当接收到主节点发送的一级子任务时,获取本地所有处理模块的处理速度;
根据所述处理模块的处理速度将所述一级子任务分割为多个二级子任务,所述二级子任务的数目与所述处理模块的数目相同;
根据所述处理模块的处理速度与所述多个二级子任务的最大穷举次数建立所述处理模块与所述二级子任务的一对一映射关系;
根据所述映射关系将所述二级子任务分配给相应的处理模块;
当接收到第一处理模块的处理结果时,遍历所有未完成所述二级子任务的处理模块的处理进度以确定处理进度最慢的第二处理模块;
将所述第二处理模块未处理完的二级子任务中的至少部分任务分配给所述第一处理模块;
当所有处理模块的处理操作执行完毕时,将所述处理操作对应的第一处理结果进行汇总形成第二处理结果;
将所述第二处理结果发送给主节点。
本发明的有益效果在于:通过将一级子任务分割为多个二级子任务,并为每个处理模块分配与其处理速度相应的二级子任务,从而保证每个处理模块对二级子任务的处理时间大致相同,并且当第一处理模块空闲时,可将处理进度最慢的第二处理模块未处理完的二级子任务中的至少部分任务分配给空闲的第一处理模块,从而使处理节点本地的资源能够被充分利用,提高了处理节点的处理效率。
在一个实施例中,所述方法还包括:
当正在处理的一级子任务处理失败时,向所述主节点反馈任务处理失败的通知消息。
本实施例的有益效果在于:当处理节点正在处理的一级子任务处理失败时,向主节点反馈任务处理失败的通知消息,从而通过任务失败时的主动上报机制,使主节点能够通过任务失败的通知消息做出相应的调度,避免处理节点出现故障时对整个任务进度的影响。
本发明还提供一种任务处理装置,包括:
获取模块,用于当接收到主节点发送的一级子任务时,获取本地所有处理模块的处理速度;
分割模块,用于根据所述处理模块的处理速度将所述一级子任务分割为多个二级子任务,所述二级子任务的数目与所述处理模块的数目相同;
建立模块,用于根据所述处理模块的处理速度与所述多个二级子任务的最大穷举次数建立所述处理模块与所述二级子任务的一对一映射关系;
第一分配模块,用于根据所述映射关系将所述二级子任务分配给相应的处理模块;
确定模块,用于当接收到第一处理模块的处理结果时,遍历所有未完成所述二级子任务的处理模块的处理进度以确定处理进度最慢的第二处理模块;
第二分配模块,用于将所述第二处理模块未处理完的二级子任务中的至少部分任务分配给所述第一处理模块;
汇总模块,用于当所有处理模块的处理操作执行完毕时,将所述处理操作对应的第一处理结果进行汇总形成第二处理结果;
发送模块,用于将所述第二处理结果发送给主节点。
本发明还提供一种任务处理系统,包括主节点和处理节点:
所述主节点,用于当获取到预设服务器发布的穷举任务时,获取与本地连接的所有处理节点的处理速度;根据所述处理节点的处理速度将所述穷举任务分割为多个一级子任务,所述一级子任务的数目与所述处理节点的数目相同;建立所述处理节点与所述一级子任务的一对一映射关系;根据所述映射关系将所述一级子任务分配给相应的处理节点;当接收到第一处理节点发送的处理结果时,遍历所有未完成所述一级子任务的处理节点的处理进度以确定处理进度最慢的第二处理节点;将所述第二处理节点未处理完的一级子任务中的至少部分任务分配给所述第一处理节点。
所述处理节点,用于当接收到主节点发送的一级子任务时,获取本地所有处理模块的处理速度;根据所述处理模块的处理速度将所述一级子任务分割为多个二级子任务,所述二级子任务的数目与所述处理模块的数目相同;根据所述处理模块的处理速度与所述多个二级子任务的最大穷举次数建立所述处理模块与所述二级子任务的一对一映射关系;根据所述映射关系将所述二级子任务分配给相应的处理模块;当接收到第一处理模块的处理结果时,遍历所有未完成所述二级子任务的处理模块的处理进度以确定处理进度最慢的第二处理模块;将所述第二处理模块未处理完的二级子任务中的至少部分任务分配给所述第一处理模块;当所有处理模块的处理操作执行完毕时,将所述处理操作对应的第一处理结果进行汇总形成第二处理结果;将所述第二处理结果发送给主节点。
本发明的有益效果在于:主节点为每个处理节点分配与其处理速度相应的一级子任务,保证所有处理节点的处理速度大致相同,并在处理速度较快的处理节点的一级子任务处理完毕时,令其分担处理速度较慢的处理节点所处理的一级子任务,使集群中的资源能够被充分利用,提升了集群的处理效率,缩短了任务处理时间;其次,处理节点为每个处理模块分配与其处理速度相应的二级子任务,保证所有处理模块的处理速度大致相同,并在处理速度较快的处理模块的二级子任务处理完毕时,令其分担处理速度较慢的处理模块所处理的二级子任务,使处理节点本地的资源能够被充分利用,提升了本地处理效率,进一步缩短了任务处理时间。
在一个实施例中
所述主节点,还用于周期性检测所有处理节点的运行状态;当检测到目标处理节点无响应或接收到所述目标处理节点反馈的任务失败的通知消息时,判断所述目标处理节点是否有正在处理的一级子任务;当所述目标处理节点有正在处理的一级子任务时,将所述一级子任务分配给所述目标处理节点之外的其他处理节点。
所述处理节点,还用于当正在处理的一级子任务处理失败时,向所述主节点反馈任务处理失败的通知消息。
本实施例的有益效果在于:在目标处理节点无响应或者任务失败时,将该目标节点正在处理的一级子任务分配给其他处理节点,从而通过周期性检测处理节点的运行状态和接收任务失败的通知消息,避免由于处理节点障碍导致的任务无法完成的情况。
本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。
下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。
附图说明
附图用来提供对本发明的进一步理解,并且构成说明书的一部分,与本发明的实施例一起用于解释本发明,并不构成对本发明的限制。在附图中:
图1为本发明一实施例中一种任务处理方法的流程图;
图2为本发明一实施例中一种任务处理方法的流程图;
图3为本发明一实施例中一种任务处理装置的框图;
图4为本发明一实施例中一种任务处理方法的流程图;
图5为本发明一实施例中一种任务处理装置的框图;
图6为本发明一实施例中一种任务处理系统的结构示意图。
具体实施方式
以下结合附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明。
图1为本发明一实施例中一种任务处理方法的流程图,如图1所示,本发明中任务处理方法可用于处理穷举任务的集群中的主节点,该方法可被实施为如下步骤S11-S16:
在步骤S11中,当获取到预设服务器发布的穷举任务时,获取与本地连接的所有处理节点的处理速度;
在步骤S12中,根据处理节点的处理速度将穷举任务分割为多个一级子任务,该一级子任务的数目与该处理节点的数目相同;
在步骤S13中,建立处理节点与一级子任务的一对一映射关系;
在步骤S14中,根据映射关系将一级子任务分配给相应的处理节点;
在步骤S15中,当接收到第一处理节点发送的处理结果时,遍历所有未完成一级子任务的处理节点的处理进度以确定处理进度最慢的第二处理节点;
在步骤S16中,将第二处理节点未处理完的一级子任务中的至少部分任务分配给第一处理节点。
通常情况下,穷举任务能够根据已知的条件确定该任务中的变量可能取的值,从而将该变量可能取的值代入变量中验证,当验证通过,确定代入的值为正确值,当验证不通过,确定代入的值为错误值。本实施例中,针对处理穷举任务的集群中的主节点提出一种任务处理方法,主节点通过一种全新的任务分配方式和对处理节点的调度机制,提高集群处理穷举任务的效率。
举例而言,当处理穷举任务的集群获取到预设服务器发布的穷举任务时,获取与本地连接的所有处理节点的处理速度;根据处理节点的处理速度将穷举任务分割为多个一级子任务,该一级子任务的数目与处理节点的数目相同,建立处理节点与一级子任务的一对一映射关系,根据该映射关系将一级子任务分配给相应的处理节点。
例如,当接收到的穷举任务有10亿个可能的取值,即该穷举任务的最大穷举次数为10亿次;该集群中有四个处理节点A、B、C和D,对应的处理速度分别为1、2、3和4,处理速度的单位为(百万次/秒),即每个处理节点每秒分别可以验证100万、200万、300万和400万个可能的取值,根据这四个处理节点处理速度,将穷举任务分割为四个一级子任务a、b、c和d,并建立处理节点与一级子任务的映射关系,其中,处理节点A、B、C和D分别对应a、b、c和d。该子任务的分割是基于每个处理节点的处理速度与总处理速度的比值进行的,也就是说,处理节点A、B、C和D占总处理速度的比值分别为0.1、0.2、0.3和0.4,因而,将这四个比值与穷举任务的最大穷举次数相乘即可得到处理节点A、B、C和D所对应的一级子任务的最大穷举次数分别为1亿次、2亿次、3亿次和4亿次,也就是说,处理节点A对应的一级子任务a包含1亿个该穷举任务可能的取值;处理节点B对应的一级子任务b包含2亿个该穷举任务可能的取值;处理节点C对应的一级子任务c包含3亿个该穷举任务可能的取值;处理节点D对应的一级子任务d包含4亿个该穷举任务可能的取值,根据处理节点与子任务的映射关系将一级子任务分配给相应的处理节点。
由上例可看出,由于四个处理节点所对应的处理速度分别为1、2、3和4,而这些处理节点对应的子任务的最大穷举次数分别为1亿次、2亿次、3亿次和4亿次,因而,这四个处理节点都是最多100秒即可完成各自的子任务。即四个处理节点的最大完成时间大致相同。
本实施例中,处理节点的处理速度的获取包括但不仅限于以下三种方式:
方式一
主节点可在本地预先存储各个处理器型号与处理速度的对应关系,如此,在需要获取处理节点的处理速度时,可获取处理节点的处理器型号,根据预先存储的处理器型号与处理速速度的对应关系确定该处理节点的处理速度。
方式二
主节点可获取处理节点处理器内的处理芯片数量,同类处理芯片的数量与计算速度的比例系数为固定值,因而可根据处理芯片的数量确定处理节点的处理速度。
方式三
在每次任务处理过程中,主节点可根据各个处理节点对应的子任务大小和完成子任务的实际时间记录各处理节点在每次任务中的处理速度,并将各处理节点在每次任务中的处理速度作为历史数据。当主节点接收到任务时,可获取该历史数据,根据该历史数据获取处理节点的处理速度,如将每个处理节点历次任务处理过程中处理速度的平均值作为各处理节点的处理速度,或将距本次任务最近的上一次任务处理过程中每个处理节点的处理速度作为本次任务处理过程中各处理节点的处理速度。
然而,上述三种方式中,根据处理节点本身的硬件或芯片获取到的处理速度以及通过历史数据获取到的处理速度都是处理节点的理论处理速度,但是,处理节点中可能会出现硬件老化、计算资源被其他进程占用等情况,在这样的情况下,真实的处理速度并不能达到理论的处理速度,因而,并不能保证每台机器都在100秒内验证完所有的可能取值,即这些处理节点的真实处理速度与理论处理速度并不一定完全一致,因而,本实施例中,提出一种处理节点的调度机制,当接收到第一处理节点发送的处理结果时,遍历所有未完成一级子任务的处理节点的处理进度以确定处理进度最慢的第二处理节点,将第二处理节点为处理完的子任务中的至少部分任务分配给第一处理节点。
例如,当处理节点D完成一级子任务d时,将处理结果上报给主节点,主节点遍历剩余的处理节点A、B和C,确定处理进度最慢的处理节点为B,此时,可根据处理节点B对一级子任务b的处理进度的多少确定将部分任务还是全部任务分配给处理节点D,例如,当处理节点b的完成进度小于10%,说明处理节点B的处理速度与理论处理速度差距极大,此时,可将处理节点B的任务全部分配给处理节点D,如果处理节点B的完成进度大于70%,说明处理节点B的处理速度与理论处理速度差距不大,此时,可根据处理节点B的理论处理速度或与处理节点D的理论处理速度的比值将剩余的30%的一级子任务中的三分之二分配给处理节点D。
另外,需要说明的是,有些穷举任务具有唯一的一组正确取值,此时,在主节点将任务分配给所有处理节点之后,检测各个处理节点的处理情况,只要检测到有处理节点验证成功时,说明任务已经完成,主节点获取该处理节点验证成功时所取的值,同时调度所有处理节点停止执行剩余任务。
还有些穷举任务存在多组正确取值,并可以确定每组正确取值的取值区间,此时,可根据每组正确取值的取值区间分割该穷举任务,将分割后的子任务根据取值区间从大到小的顺序依次分配给处理节点D、C、B和A。此时,每个处理节点只要确定一组正确取值即停止继续执行任务,并向主节点上报其验证得到的正确取值。
在实际应用中,集群中可能存在几十甚至上百个处理节点,而处理的任务所要验证的数量相比上述示例,也更为庞大,上述示例仅为了更加清楚的解释本方案,故简化了实际的集群结构和任务处理难度。
本发明的有益效果在于:通过处理节点的处理速度将穷举任务分割为多个一级子任务,并为每个处理节点分配与其处理速度相应的一级子任务,从而保证每个处理节点对一级子任务的处理时间大致相同,并且当第一处理节点任务处理完毕时,可将处理进度最慢的第二处理节点未处理完的一级子任务中的至少部分任务分配给第一处理节点,从而使集群中的空闲资源能够被充分利用,提升了集群的处理效率。
在一个实施例中,上述步骤S12可被实施为如下步骤A1-A2:
在步骤A1中,根据计算每个处理节点的处理速度与所有处理节点的总处理速度的比值得到多个第一比值;
在步骤A2中,根据多个第一比值将穷举任务分割为多个一级子任务,一级子任务的最大穷举次数与穷举任务的最大穷举次数的第二比值与第一比值一一对应;
上述步骤S13可被实施为如下步骤A3:
在步骤A3中,建立第一比值对应的处理节点和与第一比值相同的第二比值对应的一级子任务的映射关系。
例如,集群中有四个处理节点A、B、C和D,对应的处理速度分别为1、2、3和4,根据计算,处理节点A、B、C和D占总处理速度的第一比值分别为0.1、0.2、0.3和0.4,根据这些第一比值将穷举任务分割为多个子任务,该一级子任务的最大穷举次数与穷举任务的最大穷举次数的第二比值与该第一比值一一对应,即将这四个比值与穷举任务的最大穷举次数相乘即可得到四个一级子任务a、b、c和d,其对应的最大穷举次数分别为1亿次、2亿次、3亿次和4亿次,计算一级子任务的最大穷举次数和穷举任务总的穷举次数的第二比值,将第一比值和第二比值相匹配,从而建立第一比值对应的处理节点和与该第一比值相等的第二比值对应的一级子任务的映射关系如下:
处理节点A对应一级子任务a;处理节点B对应一级子任务b;处理节点C对应一级子任务c;处理节点D对应一级子任务d。
本实施例的有益效果在于:处理节点的处理速度占总比例的比值等同于其处理的一级子任务的最大穷举次数占总穷举次数的比值,从而使得每一个处理节点分配到与其处理速度相应的一级子任务。
在一个实施例中,上述步骤S16可被实施为如下步骤B1或B2:
在步骤B1中,将第二处理节点未处理完的任务全部分配给第一处理节点;
在步骤B2中,计算第一处理节点和第二处理节点处理速度的第三比值;根据第三比值将第二处理节点未处理完的任务分别分配给第一处理节点和第二处理节点。
例如,当处理节点D完成一级子任务d时,将处理结果上报给主节点,主节点遍历剩余的处理节点A、B和C,确定处理进度最慢的处理节点为B,此时,可根据处理节点B对一级子任务b的处理进度的多少确定将部分任务还是全部任务分配给处理节点D,例如,当处理节点b的完成进度小于10%,说明处理节点B的处理速度与理论处理速度差距极大,此时,可将处理节点B的任务全部分配给处理节点D,如果处理节点B的完成进度大于70%,说明处理节点B的处理速度与理论处理速度差距不大,此时,可根据处理节点B的理论处理速度或与处理节点D的理论处理速度的比值将剩余的30%的一级子任务中的三分之二分配给处理节点D。
需要说明的是,还可根据处理节点D和处理节点B当前的真实处理速度确定D需要为B分担多少任务,例如:根据处理节点D处理一级子任务d所用的时间确定处理节点D的真实处理速度,并根据处理节点B完成70%的一级子任务b所用的时间确定处理节点B的真实处理速度,根据处理节点B和处理节点D的真实处理速度分配多少任务给处理节点D。
另外,在本方案中,在确定处理进度最慢的第二处理节点之后,可根据前述的任务分割和分配机制将第二处理节点对应的一级子任务中未完成的部分进行重新分割并分配给该第二处理节点之外的其他处理节点。
本实施例的有益效果在于:通过将第二处理节点未处理完的任务全部分配给第一处理节点,从而将处理速度最慢的第二处理节点的任务交给处理速度最快且空闲的第一处理节点来处理,加快了任务处理速度;或者根据第一处理节点和第二处理节点处理速度的比值将第二处理节点未处理完的任务分别分配各第一处理节点和第二处理节点,进一步加快了任务处理速度。
在一个实施例中,如图2所示,在上述步骤S14之后,方法还可被实施为如下步骤S21-S23:
在步骤S21中,周期性检测所有处理节点的运行状态;
在步骤S22中,当检测到目标处理节点无响应或接收到目标处理节点反馈的任务失败的通知消息时,判断目标处理节点是否有正在处理的一级子任务;
在步骤S23中,当目标处理节点有正在处理的一级子任务时,将一级子任务分配给目标处理节点之外的其他处理节点。
本实施例中,可周期性检测所有处理节点的运行状态,从而,对每个处理节点的运行状态进行管理,当发现目标计算节点无响应时,或者接收到目标计算节点反馈的任务失败的通知消息时,判断该目标处理节点是否有正在处理的一级子任务,当该目标处理节点有正在处理的一级子任务时,将该一级子任务分配给其他处理节点。
需要说明的是,在将该一级子任务分配给其他处理节点之前,可判断是否有空闲的处理节点,如果有,将该一级子任务分配给空闲的处理节点;如果没有,可查看各个处理节点的处理进度,将该任务分配给处理进度最快的处理节点,或者将任务保存在主节点的缓存中,当有空闲的处理节点时,再将该任务从缓存中取出来分配给该空闲的处理节点。
另外,如果处理节点无响应时,再将处理节点未完成的任务分配给其他处理节点的同时,将无响应的处理节点从集群中删除。
本实施例的有益效果在于:在目标处理节点无响应或者任务失败时,将该目标节点正在处理的一级子任务分配给其他处理节点,从而通过周期性检测处理节点的运行状态和接收任务失败的通知消息,避免由于处理节点障碍导致的任务无法完成的情况。
图3为本发明一实施例中一种任务处理装置的框图,如图3所示,本发明中任务处理装置可用于处理穷举任务的集群中的主节点,该装置可包括如下模块:
获取模块31,用于当获取到预设服务器发布的穷举任务时,获取与本地连接的所有处理节点的处理速度;
分割模块32,用于根据处理节点的处理速度将穷举任务分割为多个一级子任务,一级子任务的数目与处理节点的数目相同;
建立模块33,用于建立处理节点与一级子任务的一对一映射关系;
第一分配模块34,用于根据映射关系将一级子任务分配给相应的处理节点;
确定模块35,用于当接收到第一处理节点发送的处理结果时,遍历所有未完成一级子任务的处理节点的处理进度以确定处理进度最慢的第二处理节点;
第二分配模块36,用于将第二处理节点未处理完的一级子任务中的至少部分任务分配给第一处理节点。
图4为本发明一实施例中一种任务处理方法的流程图,如图4所示,本发明中任务处理方法可用于处理穷举任务的集群中的处理节点,该方法可被实施为如下步骤S41-S48:
在步骤S41中,当接收到主节点发送的一级子任务时,获取本地所有处理模块的处理速度;
在步骤S42中,根据处理模块的处理速度将一级子任务分割为多个二级子任务,二级子任务的数目与处理模块的数目相同;
在步骤S43中,根据处理模块的处理速度与多个二级子任务的最大穷举次数建立处理模块与二级子任务的一对一映射关系;
在步骤S44中,根据映射关系将二级子任务分配给相应的处理模块;
在步骤S45中,当接收到第一处理模块的处理结果时,遍历所有未完成二级子任务的处理模块的处理进度以确定处理进度最慢的第二处理模块;
在步骤S46中,将第二处理模块未处理完的二级子任务中的至少部分任务分配给第一处理模块;
在步骤S47中,当所有处理模块的处理操作执行完毕时,将处理操作对应的第一处理结果进行汇总形成第二处理结果;
在步骤S48中,将第二处理结果发送给主节点。
举例而言,当处理节点获取到主节点分配的一级子任务时,获取本地所有处理模块的处理速度;根据处理模块的处理速度将以及子任务分割为多个二级子任务,该二级子任务的数目与处理节点的数目相同,建立处理节点与一级子任务的一对一映射关系,根据该映射关系将一级子任务分配给相应的处理节点。
以前述方案中的处理节点A为例,A中存在2个处理模块,对应的处理速度分别为0.3和0.7,当处理节点A接收到一级子任务a时;根据本地处理模块的处理速度将一级子任务a分割为两个二级子任务,由于一级子任务a对应的最大穷举次数为1亿次,这两个二级子任务对应的最大穷举次数分别为3000万次和7000万次,根据两个处理模块的处理速度与两个二级子任务的最大穷举次数建立处理模块与二级子任务的一对一的映射关系,其中,处理速度为0.3的处理模块对应最大穷举次数为3000万次的二级子任务,处理速度为0.7的处理模块对应最大穷举次数为7000万次的二级子任务,根据该映射关系将二级子任务分配给相应的处理模块。
由上例可看出,由于两个处理模块所对应的处理速度分别为0.3和0.7,而这些处理节点对应的子任务的最大穷举次数分别为3000万次和7000万次,因而,这两个处理模块都是最多100秒即可完成各自的子任务。即两个处理模块的最大完成时间大致相同。
当接收到第一处理模块的处理结果时,遍历所有未完成二级子任务的处理模块处理进度以确定处理进度最慢的第二处理模块,将第二处理模块未完成的二级子任务中的至少部分任务分配给第一处理模块。
例如,当处理速度为0.7的处理模块完成二级子任务时,处理节点通过遍历所有未完成二级子任务的处理模块的处理进度,确定处理进度最慢的模块为处理速度为0.3的处理模块,此时,可根据情况确定将处理速度为0.3的处理模块中未完成的任务的全部还是部分分配给处理速度为0.7的处理模块,具体分配机制与图1对应的方案类似,在此不做赘述。
本发明的有益效果在于:通过将一级子任务分割为多个二级子任务,并为每个处理模块分配与其处理速度相应的二级子任务,从而保证每个处理模块对二级子任务的处理时间大致相同,并且当第一处理模块空闲时,可将处理进度最慢的第二处理模块未处理完的二级子任务中的至少部分任务分配给空闲的第一处理模块,从而使处理节点本地的资源能够被充分利用,提高了处理节点的处理效率。
在一个实施例中,在上述步骤S44之后,方法还可被实施为如下步骤:
当正在处理的一级子任务处理失败时,向主节点反馈任务处理失败的通知消息。
举例而言,在将二级子任务分配给处理模块之后,可能会出现处理模块损坏等情况导致的二级子任务处理失败的情况,当处理节点本地所有处理模块损坏时,二级子任务无法顺利处理,此时,处理节点向主节点反馈任务处理失败的通知消息。
本实施例的有益效果在于:当处理节点正在处理的一级子任务处理失败时,向主节点反馈任务处理失败的通知消息,从而通过任务失败时的主动上报机制,使主节点能够通过任务失败的通知消息做出相应的调度,避免处理节点出现故障时对整个任务进度的影响。
图5为本发明一实施例中一种任务处理装置的框图,如图5所示,本发明中任务处理装置可用于处理穷举任务的集群中的处理节点,该装置可包括如下模块:
获取模块51,用于当接收到主节点发送的一级子任务时,获取本地所有处理模块的处理速度;
分割模块52,用于根据处理模块的处理速度将一级子任务分割为多个二级子任务,二级子任务的数目与处理模块的数目相同;
建立模块53,用于根据处理模块的处理速度与多个二级子任务的最大穷举次数建立处理模块与二级子任务的一对一映射关系;
第一分配模块54,用于根据映射关系将二级子任务分配给相应的处理模块;
确定模块55,用于当接收到第一处理模块的处理结果时,遍历所有未完成二级子任务的处理模块的处理进度以确定处理进度最慢的第二处理模块;
第二分配模块56,用于将第二处理模块未处理完的二级子任务中的至少部分任务分配给第一处理模块;
汇总模块57,用于当所有处理模块的处理操作执行完毕时,将处理操作对应的第一处理结果进行汇总形成第二处理结果;
发送模块58,用于将第二处理结果发送给主节点。
图6为本发明一实施例中一种任务处理系统的结构示意图,如图6所示,该系统可包括主节点61和处理节点62:
主节点61,用于当获取到预设服务器发布的穷举任务时,获取与本地连接的所有处理节点的处理速度;根据处理节点的处理速度将穷举任务分割为多个一级子任务,一级子任务的数目与处理节点的数目相同;建立处理节点与一级子任务的一对一映射关系;根据映射关系将一级子任务分配给相应的处理节点;当接收到第一处理节点发送的处理结果时,遍历所有未完成一级子任务的处理节点的处理进度以确定处理进度最慢的第二处理节点;将第二处理节点未处理完的一级子任务中的至少部分任务分配给第一处理节点。
处理节点62,用于当接收到主节点发送的一级子任务时,获取本地所有处理模块的处理速度;根据处理模块的处理速度将一级子任务分割为多个二级子任务,二级子任务的数目与处理模块的数目相同;根据处理模块的处理速度与多个二级子任务的最大穷举次数建立处理模块与二级子任务的一对一映射关系;根据映射关系将二级子任务分配给相应的处理模块;当接收到第一处理模块的处理结果时,遍历所有未完成二级子任务的处理模块的处理进度以确定处理进度最慢的第二处理模块;将第二处理模块未处理完的二级子任务中的至少部分任务分配给第一处理模块;当所有处理模块的处理操作执行完毕时,将处理操作对应的第一处理结果进行汇总形成第二处理结果;将第二处理结果发送给主节点。
另外,图6中示出的备份节点63用于分担主节点61的负载,提高主节点61的性能。该备份节点具备主节点的所有功能,当主节点61损坏时,还可暂时代替主节点61执行任务分割、任务分配和处理节点等操作。
本发明的有益效果在于:主节点为每个处理节点分配与其处理速度相应的一级子任务,保证所有处理节点的处理速度大致相同,并在处理速度较快的处理节点的一级子任务处理完毕时,令其分担处理速度较慢的处理节点所处理的一级子任务,使集群中的资源能够被充分利用,提升了集群的处理效率,缩短了任务处理时间;其次,处理节点为每个处理模块分配与其处理速度相应的二级子任务,保证所有处理模块的处理速度大致相同,并在处理速度较快的处理模块的二级子任务处理完毕时,令其分担处理速度较慢的处理模块所处理的二级子任务,使处理节点本地的资源能够被充分利用,提升了本地处理效率,进一步缩短了任务处理时间。
在一个实施例中
主节点61,还用于周期性检测所有处理节点的运行状态;当检测到目标处理节点无响应或接收到目标处理节点反馈的任务失败的通知消息时,判断目标处理节点是否有正在处理的一级子任务;当目标处理节点有正在处理的一级子任务时,将一级子任务分配给目标处理节点之外的其他处理节点。
处理节点62,还用于当正在处理的一级子任务处理失败时,向主节点反馈任务处理失败的通知消息。
本实施例的有益效果在于:在目标处理节点无响应或者任务失败时,将该目标节点正在处理的一级子任务分配给其他处理节点,从而通过周期性检测处理节点的运行状态和接收任务失败的通知消息,避免由于处理节点障碍导致的任务无法完成的情况。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (10)
1.一种任务处理方法,其特征在于,包括:
当获取到预设服务器发布的穷举任务时,获取与本地连接的所有处理节点的处理速度;
根据所述处理节点的处理速度将所述穷举任务分割为多个一级子任务,所述一级子任务的数目与所述处理节点的数目相同;
建立所述处理节点与所述一级子任务的一对一映射关系;
根据所述映射关系将所述一级子任务分配给相应的处理节点;
当接收到第一处理节点发送的处理结果时,遍历所有未完成所述一级子任务的处理节点的处理进度以确定处理进度最慢的第二处理节点;
将所述第二处理节点未处理完的一级子任务中的至少部分任务分配给所述第一处理节点。
2.如权利要求1所述的方法,其特征在于,所述根据所述处理节点的处理速度将所述穷举任务分割为多个一级子任务,包括:
根据计算每个处理节点的处理速度与所有处理节点的总处理速度的比值得到多个第一比值;
根据所述多个第一比值将所述穷举任务分割为多个一级子任务,所述一级子任务的最大穷举次数与所述穷举任务的最大穷举次数的第二比值与所述第一比值一一对应;
所述建立所述处理节点与所述一级子任务的一对一映射关系,包括:
建立所述第一比值对应的处理节点和与所述第一比值相同的第二比值对应的一级子任务的映射关系。
3.如权利要求1所述的方法,其特征在于,所述将所述第二处理节点未处理完的任务中的至少部分任务分配给所述第一处理节点,包括:
将所述第二处理节点未处理完的任务全部分配给所述第一处理节点;
或者
计算所述第一处理节点和第二处理节点处理速度的第三比值;
根据所述第三比值将所述第二处理节点未处理完的任务分别分配给所述第一处理节点和所述第二处理节点。
4.如权利要求1所述的方法,其特征在于,所述方法还包括:
周期性检测所有处理节点的运行状态;
当检测到目标处理节点无响应或接收到所述目标处理节点反馈的任务失败的通知消息时,判断所述目标处理节点是否有正在处理的一级子任务;
当所述目标处理节点有正在处理的一级子任务时,将所述一级子任务分配给所述目标处理节点之外的其他处理节点。
5.一种任务处理装置,其特征在于,包括:
获取模块,用于当获取到预设服务器发布的穷举任务时,获取与本地连接的所有处理节点的处理速度;
分割模块,用于根据所述处理节点的处理速度将所述穷举任务分割为多个一级子任务,所述一级子任务的数目与所述处理节点的数目相同;
建立模块,用于建立所述处理节点与所述一级子任务的一对一映射关系;
第一分配模块,用于根据所述映射关系将所述一级子任务分配给相应的处理节点;
确定模块,用于当接收到第一处理节点发送的处理结果时,遍历所有未完成所述一级子任务的处理节点的处理进度以确定处理进度最慢的第二处理节点;
第二分配模块,用于将所述第二处理节点未处理完的一级子任务中的至少部分任务分配给所述第一处理节点。
6.一种任务处理方法,其特征在于,包括:
当接收到主节点发送的一级子任务时,获取本地所有处理模块的处理速度;
根据所述处理模块的处理速度将所述一级子任务分割为多个二级子任务,所述二级子任务的数目与所述处理模块的数目相同;
根据所述处理模块的处理速度与所述多个二级子任务的最大穷举次数建立所述处理模块与所述二级子任务的一对一映射关系;
根据所述映射关系将所述二级子任务分配给相应的处理模块;
当接收到第一处理模块的处理结果时,遍历所有未完成所述二级子任务的处理模块的处理进度以确定处理进度最慢的第二处理模块;
将所述第二处理模块未处理完的二级子任务中的至少部分任务分配给所述第一处理模块;
当所有处理模块的处理操作执行完毕时,将所述处理操作对应的第一处理结果进行汇总形成第二处理结果;
将所述第二处理结果发送给主节点。
7.如权利要求1所述的方法,其特征在于,所述方法还包括:
当正在处理的一级子任务处理失败时,向所述主节点反馈任务处理失败的通知消息。
8.一种任务处理装置,其特征在于,包括:
获取模块,用于当接收到主节点发送的一级子任务时,获取本地所有处理模块的处理速度;
分割模块,用于根据所述处理模块的处理速度将所述一级子任务分割为多个二级子任务,所述二级子任务的数目与所述处理模块的数目相同;
建立模块,用于根据所述处理模块的处理速度与所述多个二级子任务的最大穷举次数建立所述处理模块与所述二级子任务的一对一映射关系;
第一分配模块,用于根据所述映射关系将所述二级子任务分配给相应的处理模块;
确定模块,用于当接收到第一处理模块的处理结果时,遍历所有未完成所述二级子任务的处理模块的处理进度以确定处理进度最慢的第二处理模块;
第二分配模块,用于将所述第二处理模块未处理完的二级子任务中的至少部分任务分配给所述第一处理模块;
汇总模块,用于当所有处理模块的处理操作执行完毕时,将所述处理操作对应的第一处理结果进行汇总形成第二处理结果;
发送模块,用于将所述第二处理结果发送给主节点。
9.一种任务处理系统,其特征在于,包括主节点和处理节点:
所述主节点,用于当获取到预设服务器发布的穷举任务时,获取与本地连接的所有处理节点的处理速度;根据所述处理节点的处理速度将所述穷举任务分割为多个一级子任务,所述一级子任务的数目与所述处理节点的数目相同;建立所述处理节点与所述一级子任务的一对一映射关系;根据所述映射关系将所述一级子任务分配给相应的处理节点;当接收到第一处理节点发送的处理结果时,遍历所有未完成所述一级子任务的处理节点的处理进度以确定处理进度最慢的第二处理节点;将所述第二处理节点未处理完的一级子任务中的至少部分任务分配给所述第一处理节点。
所述处理节点,用于当接收到主节点发送的一级子任务时,获取本地所有处理模块的处理速度;根据所述处理模块的处理速度将所述一级子任务分割为多个二级子任务,所述二级子任务的数目与所述处理模块的数目相同;根据所述处理模块的处理速度与所述多个二级子任务的最大穷举次数建立所述处理模块与所述二级子任务的一对一映射关系;根据所述映射关系将所述二级子任务分配给相应的处理模块;当接收到第一处理模块的处理结果时,遍历所有未完成所述二级子任务的处理模块的处理进度以确定处理进度最慢的第二处理模块;将所述第二处理模块未处理完的二级子任务中的至少部分任务分配给所述第一处理模块;当所有处理模块的处理操作执行完毕时,将所述处理操作对应的第一处理结果进行汇总形成第二处理结果;将所述第二处理结果发送给主节点。
10.根据权利要求7所述的系统,其特征在于,
所述主节点,还用于周期性检测所有处理节点的运行状态;当检测到目标处理节点无响应或接收到所述目标处理节点反馈的任务失败的通知消息时,判断所述目标处理节点是否有正在处理的一级子任务;当所述目标处理节点有正在处理的一级子任务时,将所述一级子任务分配给所述目标处理节点之外的其他处理节点。
所述处理节点,还用于当正在处理的一级子任务处理失败时,向所述主节点反馈任务处理失败的通知消息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610211175.6A CN105912399B (zh) | 2016-04-05 | 2016-04-05 | 一种任务处理方法、装置及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610211175.6A CN105912399B (zh) | 2016-04-05 | 2016-04-05 | 一种任务处理方法、装置及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105912399A true CN105912399A (zh) | 2016-08-31 |
CN105912399B CN105912399B (zh) | 2020-02-07 |
Family
ID=56744940
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610211175.6A Active CN105912399B (zh) | 2016-04-05 | 2016-04-05 | 一种任务处理方法、装置及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105912399B (zh) |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106528292A (zh) * | 2016-10-21 | 2017-03-22 | 杭州嘉楠耘智信息科技有限公司 | 一种任务处理方法及装置 |
CN107315586A (zh) * | 2017-06-20 | 2017-11-03 | 网易(杭州)网络有限公司 | 应用打包的方法、装置和系统 |
CN107341061A (zh) * | 2017-07-20 | 2017-11-10 | 郑州云海信息技术有限公司 | 一种数据调度处理方法及装置 |
CN107547270A (zh) * | 2017-08-14 | 2018-01-05 | 天脉聚源(北京)科技有限公司 | 一种智能分配任务分片的方法及装置 |
CN108108233A (zh) * | 2017-11-29 | 2018-06-01 | 上海交通大学 | 任务多副本执行的集群作业调度方法及系统 |
CN108540568A (zh) * | 2018-04-23 | 2018-09-14 | 移康智能科技(上海)股份有限公司 | 计算能力共享方法及智能设备 |
CN109101340A (zh) * | 2018-09-18 | 2018-12-28 | 武汉斗鱼网络科技有限公司 | 弹幕消息的动态分发方法、装置、设备和存储介质 |
CN109144690A (zh) * | 2018-07-06 | 2019-01-04 | 麒麟合盛网络技术股份有限公司 | 任务处理方法和装置 |
CN110908793A (zh) * | 2019-09-30 | 2020-03-24 | 北京辰森世纪科技股份有限公司 | 长时任务执行方法、装置、设备及可读存储介质 |
CN111104168A (zh) * | 2018-10-25 | 2020-05-05 | 杭州嘉楠耘智信息科技有限公司 | 一种计算结果提交方法及装置 |
CN111338800A (zh) * | 2020-02-26 | 2020-06-26 | 深圳市优网科技有限公司 | 一种数据解析方法及装置 |
WO2020134840A1 (zh) * | 2018-12-27 | 2020-07-02 | 深圳云天励飞技术有限公司 | 数据分配方法及相关产品 |
CN111625644A (zh) * | 2020-04-14 | 2020-09-04 | 北京捷通华声科技股份有限公司 | 一种文本分类方法和装置 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080244321A1 (en) * | 2007-03-08 | 2008-10-02 | Tim Kelso | Program Test System |
CN104598425A (zh) * | 2013-10-31 | 2015-05-06 | 中国石油天然气集团公司 | 一种通用多机并行计算方法及系统 |
CN104615498A (zh) * | 2015-01-22 | 2015-05-13 | 北京仿真中心 | 一种基于任务迁移的集群系统动态负载均衡方法 |
CN104699542A (zh) * | 2015-03-31 | 2015-06-10 | 北京奇艺世纪科技有限公司 | 任务处理方法及系统 |
CN104731663A (zh) * | 2015-03-31 | 2015-06-24 | 北京奇艺世纪科技有限公司 | 任务处理方法及系统 |
CN105573827A (zh) * | 2015-12-11 | 2016-05-11 | 联动优势电子商务有限公司 | 一种多机并行处理方法及装置 |
-
2016
- 2016-04-05 CN CN201610211175.6A patent/CN105912399B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080244321A1 (en) * | 2007-03-08 | 2008-10-02 | Tim Kelso | Program Test System |
CN104598425A (zh) * | 2013-10-31 | 2015-05-06 | 中国石油天然气集团公司 | 一种通用多机并行计算方法及系统 |
CN104615498A (zh) * | 2015-01-22 | 2015-05-13 | 北京仿真中心 | 一种基于任务迁移的集群系统动态负载均衡方法 |
CN104699542A (zh) * | 2015-03-31 | 2015-06-10 | 北京奇艺世纪科技有限公司 | 任务处理方法及系统 |
CN104731663A (zh) * | 2015-03-31 | 2015-06-24 | 北京奇艺世纪科技有限公司 | 任务处理方法及系统 |
CN105573827A (zh) * | 2015-12-11 | 2016-05-11 | 联动优势电子商务有限公司 | 一种多机并行处理方法及装置 |
Cited By (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106528292A (zh) * | 2016-10-21 | 2017-03-22 | 杭州嘉楠耘智信息科技有限公司 | 一种任务处理方法及装置 |
CN107315586A (zh) * | 2017-06-20 | 2017-11-03 | 网易(杭州)网络有限公司 | 应用打包的方法、装置和系统 |
CN107341061A (zh) * | 2017-07-20 | 2017-11-10 | 郑州云海信息技术有限公司 | 一种数据调度处理方法及装置 |
CN107547270A (zh) * | 2017-08-14 | 2018-01-05 | 天脉聚源(北京)科技有限公司 | 一种智能分配任务分片的方法及装置 |
CN108108233A (zh) * | 2017-11-29 | 2018-06-01 | 上海交通大学 | 任务多副本执行的集群作业调度方法及系统 |
CN108108233B (zh) * | 2017-11-29 | 2021-10-01 | 上海交通大学 | 任务多副本执行的集群作业调度方法及系统 |
CN108540568B (zh) * | 2018-04-23 | 2021-06-01 | 移康智能科技(上海)股份有限公司 | 计算能力共享方法及智能设备 |
CN108540568A (zh) * | 2018-04-23 | 2018-09-14 | 移康智能科技(上海)股份有限公司 | 计算能力共享方法及智能设备 |
CN109144690A (zh) * | 2018-07-06 | 2019-01-04 | 麒麟合盛网络技术股份有限公司 | 任务处理方法和装置 |
CN109101340A (zh) * | 2018-09-18 | 2018-12-28 | 武汉斗鱼网络科技有限公司 | 弹幕消息的动态分发方法、装置、设备和存储介质 |
CN111104168A (zh) * | 2018-10-25 | 2020-05-05 | 杭州嘉楠耘智信息科技有限公司 | 一种计算结果提交方法及装置 |
WO2020134840A1 (zh) * | 2018-12-27 | 2020-07-02 | 深圳云天励飞技术有限公司 | 数据分配方法及相关产品 |
CN110908793A (zh) * | 2019-09-30 | 2020-03-24 | 北京辰森世纪科技股份有限公司 | 长时任务执行方法、装置、设备及可读存储介质 |
CN111338800A (zh) * | 2020-02-26 | 2020-06-26 | 深圳市优网科技有限公司 | 一种数据解析方法及装置 |
CN111338800B (zh) * | 2020-02-26 | 2024-04-16 | 深圳市优网科技有限公司 | 一种数据解析方法及装置 |
CN111625644A (zh) * | 2020-04-14 | 2020-09-04 | 北京捷通华声科技股份有限公司 | 一种文本分类方法和装置 |
CN111625644B (zh) * | 2020-04-14 | 2023-09-12 | 北京捷通华声科技股份有限公司 | 一种文本分类方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN105912399B (zh) | 2020-02-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105912399A (zh) | 一种任务处理方法、装置及系统 | |
CN108632365B (zh) | 服务资源调整方法、相关装置和设备 | |
CN105279027B (zh) | 一种虚拟机部署方法及装置 | |
CN106789362A (zh) | 一种设备管理方法及网管系统 | |
CN105677462A (zh) | 基于物联网的分布式任务系统及业务处理方法 | |
CN110796343A (zh) | 智能派工方法及装置、系统 | |
CN106155807A (zh) | 一种实现资源调度的方法与设备 | |
CN108132835A (zh) | 基于多进程的任务请求处理方法、装置和系统 | |
CN108965014A (zh) | QoS感知的服务链备份方法及系统 | |
CN106612204B (zh) | 业务校验方法及装置 | |
CN104615486A (zh) | 用于搜索推广平台的多任务调度和执行方法、装置和系统 | |
CN106980571A (zh) | 一种测试用例集的构建方法和设备 | |
CN109542781B (zh) | 区块链共识算法测试方法、装置、计算装置和存储介质 | |
CN109508295A (zh) | 区块链共识算法测试方法、装置、计算装置和存储介质 | |
CN110147273A (zh) | 一种任务执行方法及装置 | |
CN109413202A (zh) | 区块链交易信息的排序系统及方法 | |
CN117729576A (zh) | 告警监控方法、装置、设备及存储介质 | |
KR20140066616A (ko) | 클라우드 기반 분산병렬 응용 워크플로우 실행 서비스의 제공 방법, 장치 및 시스템 | |
CN109729086B (zh) | 策略管理方法、系统、设备及介质 | |
CN110609707B (zh) | 在线数据处理系统生成方法、装置及设备 | |
CN105373451B (zh) | 一种虚拟机放置的方法及装置 | |
CN111082964A (zh) | 一种配置信息的分发方法和装置 | |
CN110413287A (zh) | 软件的部署方法和装置 | |
CN112134734B (zh) | 一种网络设备的配置方法及装置 | |
CN115952003A (zh) | 一种集群服务器负载均衡的方法、装置、设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |