CN109976907A - 任务分配方法和系统、电子设备、计算机可读介质 - Google Patents

任务分配方法和系统、电子设备、计算机可读介质 Download PDF

Info

Publication number
CN109976907A
CN109976907A CN201910180344.8A CN201910180344A CN109976907A CN 109976907 A CN109976907 A CN 109976907A CN 201910180344 A CN201910180344 A CN 201910180344A CN 109976907 A CN109976907 A CN 109976907A
Authority
CN
China
Prior art keywords
server
cluster
task
resource
resources
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
Application number
CN201910180344.8A
Other languages
English (en)
Other versions
CN109976907B (zh
Inventor
王健
白宇
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Baidu Netcom Science and Technology Co Ltd
Original Assignee
Beijing Baidu Netcom Science and Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Baidu Netcom Science and Technology Co Ltd filed Critical Beijing Baidu Netcom Science and Technology Co Ltd
Priority to CN201910180344.8A priority Critical patent/CN109976907B/zh
Publication of CN109976907A publication Critical patent/CN109976907A/zh
Application granted granted Critical
Publication of CN109976907B publication Critical patent/CN109976907B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/5015Service provider selection

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multi Processors (AREA)
  • Computer And Data Communications (AREA)

Abstract

本公开提供了一种任务分配方法,该方法包括:获取待分配的任务的需求资源,判断是否存在与需求资源对应的任务处理能力的第一集群,如果存在第一集群,则获取第一集群内每个服务器的剩余资源,根据需求资源和每个剩余资源,对待分配的任务进行分配。本公开还提供了一种任务分配系统、电子设备和计算机可读介质。

Description

任务分配方法和系统、电子设备、计算机可读介质
技术领域
本公开实施例涉及互联网技术领域,特别涉及任务分配方法和系统、电子设备、计算机可读介质。
背景技术
随着互联网和虚拟化技术的发展,越来越多的公司将线上的应用迁移到云平台。
在现有技术中,资源对应的任务的分配方法主要针对的是单纬度计算机资源,将集群中的计算机资源平均分割成等分的槽位,分配系统不能对小于一个单位的槽位的任务进行分配。即,以槽位为单位对任务进行分配。而在分配过程中,常见的策略包括:首度匹配,随机匹配以及轨迹匹配。首度匹配时直接将任务分配至第一台满足任务的资源需求的服务器。随机分配是将任务随机分配至任意一台服务器。轨迹分配是指按照预设的分配路径对任务进行分配。
发明内容
本公开实施例提供一种任务分配方法和系统、电子设备、计算机可读介质。
第一方面,本公开实施例提供了一种任务分配方法,包括:
获取待分配的任务的需求资源;
判断是否存在与所述需求资源对应的任务处理能力的第一集群;
如果存在所述第一集群,则获取所述第一集群内每个服务器的剩余资源;
根据所述需求资源和每个所述剩余资源,对所述待分配的任务进行分配。
在一些实施例中,所述根据所述需求资源和每个所述剩余资源,对所述待分配的任务进行分配,包括:
响应于存在至少一个剩余资源大于或等于所述需求资源,获取剩余资源大于或等于所述需求资源的第一服务器,若所述第一服务器为多个,则将所述待分配的任务分配至其中的一个第一服务器;若所述第一服务器为一个,则将所述待分配的任务分配至该第一服务器。
在一些实施例中,所述将所述待分配的任务分配至其中的一个第一服务器,包括:
将所述待分配的任务随机分配至其中任意一个第一服务器;或者,
将所述待分配的任务分配至多个所述第一服务器中剩余资源最小的服务器。
在一些实施例中,还包括:
如果不存在所述第一集群,或者,每个所述剩余资源均小于所述需求资源,则判断是否有闲置服务器;
如果有至少一个闲置服务器,则将所述待分配的任务分配至所述至少一个闲置服务器中的一个闲置服务器。
在一些实施例中,如果没有闲置服务器,则包括:
基于所述需求资源和各个集群的任务处理能力确定第二集群,其中,所述第二集群包括任务处理能力大于所述需求资源且与所述需求资源最接近的集群,和任务处理能力小于所述需求资源且与所述需求资源最接近的集群;
获取所述第二集群内剩余资源最大的服务器,并基于所述第二集群内剩余资源最大的服务器构建缓冲集群;
根据所述需求资源和所述缓冲集群内每个服务器的剩余资源,对所述待分配的任务进行分配。
在一些实施例中,还包括:
判断执行任务的服务器是否为任意一个缓冲集群中的服务器;
如果执行所述任务的服务器不是所述任意一个缓冲集群中的服务器,则确定执行所述任务的服务器所属的第三集群;
获取与所述第三集群相关的第一缓冲集群,其中,所述第一缓冲集群内至少包括与所述第三集群的任务处理能力相同的服务器;
针对所述第一缓冲集群内的每个服务器,分别判断每个服务器的任务列表中的任务的需求资源是否相同;
若所述第一缓冲集群内存在任务列表中的任务的需求资源相同的服务器,则确定与相同需求资源对应的任务处理能力的第四集群;
从所述第四集群内获取剩余资源最大的第二服务器;
响应于所述第一缓冲集群内任务列表中的任务的需求资源相同的服务器的剩余资源小于所述第二服务器的剩余资源,将所述第二服务器添加至所述第一缓冲集群。
在一些实施例中,还包括:
如果执行所述任务的服务器是第二缓冲集群内的第三服务器,则获取所述第三服务器的任务列表;
判断所述第三服务器的任务列表中的任务的需求资源是否一致;
若一致,则确定与所述第三服务器的任务列表中任务的需求资源对应的任务处理能力的第五集群;
从所述第五集群内获取剩余资源最大的第四服务器;
响应于所述第三服务器的剩余资源小于所述第四服务器的剩余资源,将所述第四服务器添加至所述第二缓冲集群。
在一些实施例中,还包括:
响应于所述第一缓冲集群内任务列表中的任务的需求资源相同的服务器的剩余资源小于所述第二服务器的剩余资源,将所述第一缓冲集群内任务列表中的任务的需求资源相同的服务器添加至所述第四集群;和/或,
响应于所述第三服务器的剩余资源小于所述第四服务器的剩余资源,将所述第三服务器添加至所述第五集群。
第二方面,本公开实施例提供了一种任务分配系统,包括:
获取模块,用于获取待分配的任务的需求资源;
判断模块,用于判断是否存在与所述需求资源对应的任务处理能力的第一集群;
所述获取模块还用于,如果存在所述第一集群,则获取所述第一集群内每个服务器的剩余资源;
分配模块,用于根据所述需求资源和每个所述剩余资源,对所述待分配的任务进行分配。
在一些实施例中,所述分配模块具体用于:
响应于存在至少一个剩余资源大于或等于所述需求资源,获取剩余资源大于或等于所述需求资源的第一服务器,若所述第一服务器为多个,则将所述待分配的任务分配至其中的一个第一服务器;若所述第一服务器为一个,则将所述待分配的任务分配至该第一服务器。
在一些实施例中,若所述第一服务器为多个,则所述分配模块具体用于:
将所述待分配的任务随机分配至其中任意一个第一服务器;或者,
将所述待分配的任务分配至多个所述第一服务器中剩余资源最小的服务器。
在一些实施例中,如果不存在所述第一集群,或者,每个所述剩余资源均小于所述需求资源,则所述判断模块还用于,判断是否有闲置服务器;
如果有至少一个闲置服务器,则所述分配模块还用于,将所述待分配的任务分配至所述至少一个闲置服务器中的一个闲置服务器。
在一些实施例中,确定模块,用于基于所述需求资源和各个集群的任务处理能力确定第二集群,其中,所述第二集群包括任务处理能力大于所述需求资源且与所述需求资源最接近的集群,和任务处理能力小于所述需求资源且与所述需求资源最接近的集群;
所述获取模块还用于,获取所述第二集群内剩余资源最大的服务器;
构建模块,用于基于所述第二集群内剩余资源最大的服务器构建缓冲集群;
所述分配模块还用于,根据所述需求资源和所述缓冲集群内每个服务器的剩余资源,对所述待分配的任务进行分配。
在一些实施例中,所述判断模块还用于,判断执行任务的服务器是否为任意一个缓冲集群中的服务器;
所述确定模块还用于,如果执行所述任务的服务器不是所述任意一个缓冲集群中的服务器,则确定执行所述任务的服务器所属的第三集群;
所述获取模块还用于,获取与所述第三集群相关的第一缓冲集群,其中,所述第一缓冲集群内至少包括与所述第三集群的任务处理能力相同的服务器;
所述判断模块还用于,针对所述第一缓冲集群内的每个服务器,分别判断每个服务器的任务列表中的任务的需求资源是否相同;
所述确定模块还用于,若所述第一缓冲集群内存在任务列表中的任务的需求资源相同的服务器,则确定与相同的需求资源对应的任务处理能力的第四集群;
所述获取模块还用于,从所述第四集群内获取剩余资源最大的第二服务器;
添加模块,用于响应于所述第一缓冲集群内任务列表中的任务的需求资源相同的服务器的剩余资源小于所述第二服务器的剩余资源,将所述第二服务器添加至所述第一缓冲集群。
在一些实施例中,如果执行所述任务的服务器是第二缓冲集群内的第三服务器,则所述获取模块还用于,获取所述第三服务器的任务列表;
所述判断模块还用于,判断所述第三服务器的任务列表中的任务的需求资源是否一致;
若一致,则所述确定模块还用于,确定所述第三服务器的任务列表中任务的需求资源对应的任务处理能力的第五集群;
所述获取模块还用于,从所述第五集群内获取剩余资源最大的第四服务器;
所述添加模块还用于,响应于所述第三服务器的剩余资源小于所述第四服务器的剩余资源,将所述第四服务器添加至所述第二缓冲集群。
在一些实施例中,所述添加模块还用于:
响应于所述第一缓冲集群内任务列表中的任务的需求资源相同的服务器的剩余资源小于所述第二服务器的剩余资源,将所述第一缓冲集群内任务列表中的任务的需求资源相同的服务器添加至所述第四集群;和/或,
响应于所述第三服务器的剩余资源小于所述第四服务器的剩余资源,将所述第三服务器添加至所述第五集群。
第三方面,本公开实施例提供了一种电子设备,包括:
一个或多个处理器;
存储装置,其上存储有一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如上任一实施例所述的方法。
第三方面,本公开实施例提供了一种计算机可读介质,其上存储有计算机程序,其中,所述程序被处理器执行时实现如上任一实施例所述的方法。
本公开实施例提供的获取待分配的任务的需求资源,判断是否存在与需求资源对应的任务处理能力的第一集群,如果存在第一集群,则获取第一集群内每个服务器的剩余资源,根据需求资源和每个剩余资源,对待分配的任务进行分配技术方案,实现了高效的对待分配的任务进行分配,避免任务分配的碎片化,提高资源利用率的技术效果。
附图说明
附图用来提供对本公开实施例的进一步理解,并且构成说明书的一部分,与本公开的实施例一起用于解释本公开,并不构成对本公开的限制。通过参考附图对详细示例实施例进行描述,以上和其他特征和优点对本领域技术人员将变得更加显而易见,在附图中:
图1为根据本公开实施例的任务分配方法的流程图;
图2为根据本公开另一实施例的根据需求资源和每个剩余资源,对待分配的任务进行分配的方法流程图;
图3为根据本公开另一实施例的任务分配方法的流程图;
图4为根据本公开另一实施例的任务分配方法的流程图;
图5为根据本公开实施例提供的任务分配系统的模块示意图;
图6为根据本公开另一实施例的任务分配系统的模块示意图;
图7为根据本公开实施例提供的电子设备的框架图;
附图标记:
1、获取模块,2、判断模块,3、分配模块,4、确定模块,5、构建模块,6、添加模块,11、处理单元(或处理器),12、存储器,13、总线,14、RAM,15、高速缓存,16、存储系统,17、程序组件,18、实用工具,19、外部设备,20、显示器,21、I/O接口,22、网络适配器。
具体实施方式
为使本领域的技术人员更好地理解本发明的技术方案,下面结合附图对本发明提供的任务分配方法和系统、电子设备、计算机可读介质进行详细描述。
在下文中将参考附图更充分地描述示例实施例,但是所述示例实施例可以以不同形式来体现且不应当被解释为限于本文阐述的实施例。反之,提供这些实施例的目的在于使本公开透彻和完整,并将使本领域技术人员充分理解本公开的范围。
如本文所使用的,术语“和/或”包括一个或多个相关列举条目的任何和所有组合。
本文所使用的术语仅用于描述特定实施例,且不意欲限制本公开。如本文所使用的,单数形式“一个”和“该”也意欲包括复数形式,除非上下文另外清楚指出。还将理解的是,当本说明书中使用术语“包括”和/或“由……制成”时,指定存在所述特征、整体、步骤、操作、元件和/或组件,但不排除存在或添加一个或多个其他特征、整体、步骤、操作、元件、组件和/或其群组。
本文所述实施例可借助本公开的理想示意图而参考平面图和/或截面图进行描述。因此,可根据制造技术和/或容限来修改示例图示。因此,实施例不限于附图中所示的实施例,而是包括基于制造工艺而形成的配置的修改。因此,附图中例示的区具有示意性属性,并且图中所示区的形状例示了元件的区的具体形状,但并不旨在是限制性的。
除非另外限定,否则本文所用的所有术语(包括技术和科学术语)的含义与本领域普通技术人员通常理解的含义相同。还将理解,诸如那些在常用字典中限定的那些术语应当被解释为具有与其在相关技术以及本公开的背景下的含义一致的含义,且将不解释为具有理想化或过度形式上的含义,除非本文明确如此限定。
根据本公开实施例的一个方面,本公开实施例提供了一种任务分配方法,该任务分配方法应用于任务分配系统。
请参阅图1,图1为根据本公开实施例的任务分配方法的流程图。
如图1所示,该方法包括:
S1:获取待分配的任务的需求资源。
在S1之前,还包括初始化的步骤:
S01:基于预设的步长对多个服务器进行划分,得到至少一个集群,并确定每个集群的任务处理能力。
其中,步长是指在服务器分配过程中,以其为划分标准,以便将不同任务处理能力对应的服务器划分至不同的集群。也就是说,步长的本质为资源。如,当步长为10G时,则以10G为标准,对服务器进行划分。具体地:将任务处理能力为10G的服务器划分至一个集群,且,将该集群的任务处理能力亦标记为10G。将任务处理能力为20G的服务器划分至另一个集群,且将该集群的任务处理能力亦标记为20G。且,将任务处理能力为10G的集群与任务处理能力为20G的集群称为相邻集群。以此类推,此处不再赘述。
需要说明的是,可基于应用场景的不同设置不同的步长。即,可基于具体应用需求设置于应用需求相对应的步长。如:当应用场景为任务的需求资源跨度小时,则可对应的设置较小的步长。当应用场景为任务的资源需求跨度大时,则可对应的设置较大的步长。
具体地:根据历史数据可知,任务的需求资源的跨度大多在2G至10G之间,则将步长设置为5G。即以5G为划分标准,将系统中的服务器划分成多个集群。当一个集群的任务处理能力为20G时,则与其相邻的集群为两个,且该两个相邻集群的任务处理能力分别为15G和25G。此处的划分方式只是示范性的说明,而不能理解为对本实施例保护范围的限定。
需要说明的是,本实施例中所述的某集群的任务处理能力是一个相对概念,是用以将不同的集群进行区分,且说明该集群中的服务器在处理该任务处理能力对应的任务时效果最佳。集群的划分的本质是对服务器的属性进行标注,指明该服务器负责处理多少资源的任务。
S2:判断是否存在与需求资源对应的任务处理能力的第一集群。
在需要对任务进行处理时,先需将任务分配具体执行该任务的服务器,以便由该服务器对该任务进行处理。需求资源即完成该任务需要的资源。
由于每个集群内至少有一个服务器,该集群的任务处理能力即为该服务器对应的任务处理能力。如:在对服务器进行划分后,共得到m个集群。集群A(m个集群中的一个集群)的任务处理能力为40G,集群A内共有3个服务器,则3个服务器中的每个服务器的任务处理能力均为40G。
在该步骤中,是在所有集群中进行判断,判断所有集群中是否存在与需求资源对应的任务处理能力的集群。
如:获取到的需求资源为40G,则判断m个集群中是否存在任务处理能力亦为40G的集群(即第一集群)。
S3:如果存在第一集群,则获取第一集群内每个服务器的剩余资源。
如果m个集群中有任务处理能力为40G的集群(即第一集群),则获取第一集群内每个服务器的剩余资源。
可以理解的是,尽管第一集群内的每个服务器的任务处理能力均为40G,但是,可能存在某个服务器正在执行某个任务,以至于该服务器的剩余资源少于40G。剩余资源即为当前可用的资源。
S4:根据需求资源和每个剩余资源,对待分配的任务进行分配。
具体地:当第一集群内有3个服务器,每个服务器均对应一个剩余资源。根据需求资源40G和3个服务器分别对应的3个剩余资源,对待分配的任务进行分配。
通过本公开实施例提供的S1至S4所述的技术方案,避免了现有技术中,通过首度匹配,随机匹配以及轨迹匹配的方式对待分配的任务进行分配时,造成的资源浪费,成本偏高的技术弊端。实现了高效的对待分配的任务进行执行,避免资源分配的碎片化,实现集群之间的灵活拆借,提高资源利用率的技术效果。
具体地:由于本公开实施例是基于需求资源在所有集群中确定能够处理该需求资源的第一集群,并根据第一集群内的每个服务器的剩余资源和需求资源对待分配的任务进行分配。避免了现有技术中通过在多个服务器中进行逐个选取时,造成的浪费时间,增大功耗的技术问题。且,通过匹配的方式直接选取能够处理该需求资源的待分配的任务的第一集群,可实现节约选取过程中的时间,且,确保选取的第一集群是优选作为处理该待分配的任务的服务器的集群。避免了现有技术中二次选择的弊端。
在一些实施例中,S4包括:
响应于存在至少一个剩余资源大于或等于需求资源,获取剩余资源大于或等于需求资源的第一服务器,若第一服务器为多个,则将待分配的任务分配至其中的一个第一服务器;若第一服务器为一个,则将待分配的任务分配至该第一服务器。
在该实施例中,如果3个服务器中的两个服务器的剩余资源均大于需求资源,且分别为服务器A和服务器B,则将待分配的任务分配至服务器A或者服务器B。如果3个服务器中仅有一个服务器的剩余资源大于需求资源,则将待分配的任务分配至该唯一的服务器。
在一些实施例中,将待分配的任务分配至其中的一个第一服务器,包括:
将待分配的任务随机分配至其中任意一个第一服务器;或者,
将待分配的任务分配至多个第一服务器中剩余资源最小的服务器。
具体地:将待分配的任务分配至服务器A或者服务器B至少包括两种方式:
方式1:从服务器A和服务器B中随机选取一个,并将待分配的任务分配至随机选取的服务器。
方式2:将服务器A的剩余资源与服务器B的剩余资源进行比较,如果服务器A的剩余资源小于服务器B的剩余资源,则将待分配的任务分配至服务器A。当然,如果刚好两个服务器的剩余资源相同,则随机分配。
通过选取剩余资源最小的服务器处理待分配任务,可实现提高资源的利用率,且能实现任务的密集分配,避免资源分配的碎片化的技术效果。
具体可参见图2,由图2可知,S4具体包括:
S4-1:判断是否存在至少一个剩余资源大于或等于需求资源的服务器。如果是,则执行S4-2,如果否,则跳转至S5。
S4-2:判断服务器的数量是否为多个,如果是,则执行S4-3,如果否,则执行S4-4。
S4-3:将待分配的任务分配至其中的一个第一服务器。
其中,S4-3的实现方式又包括两种,第一种为S4-3-1:将待分配的任务随机分配至任意一个第一服务器。第二种为S4-3-2:将待分配的任务分配至多个第一服务器中剩余资源最小的服务器。
S4-4:将待分配的任务分配至该第一服务器。
通过本公开实施例提供的将待分配的任务分配至剩余资源最小的服务器,可确保任务执行过程中的效率和精准。进而实现提高效率,且提高资源利用率的技术效果。
结合图3可知,在一些实施例中,如果不存在第一集群,或者,每个剩余资源均小于需求资源,该方法还包括:
S5:判断是否有闲置服务器。
也就是说,当出现下述两种情况时,需要判断是否有闲置服务器。其中,闲置服务器是指当前没有执行待分配的任务,且没有正在等待被执行的任务的服务器。
第一种情况是:并不存在任务处理能力为40G的集群。如:步长为30G,则划分后的集群的任务处理能力分别为30G,60G,90G等。
第二种情况是,40G集群中的每个服务器对应的剩余资源均小于40G。
S6:如果有至少一个闲置服务器,则将待分配的任务分配至至少一个闲置服务器中的一个闲置服务器。
可以理解的是,判断是否有闲置服务器的结果有两种,一种为有,一个为没有。如果为有,则将待分配的任务分配至一个闲置服务器。
当然,如果为有,则可继续划分为两种情况,一种情况为闲置服务器的数量为多个,另一种情况为闲置服务器的数量为一个。当为多个时,则可在多个闲置服务器中随机选取一个,以便对待分配的任务进行分配。或者,获取每个闲置服务器的剩余资源(此时的剩余资源即为闲置服务器能够提供的全部资源),从中选取剩余资源最大的闲置服务器,以便将待分配的任务分配至剩余资源最大的闲置服务器。当为一个时,则将待分配的任务分配至该唯一一个服务器。
同理,通过选取剩余资源最大的闲置服务器对待分配的任务进行处理,可实现提高效率,且提高资源利用率的技术效果。
结合图3可知,在一些实施例中,如果没有闲置服务器,该方法还包括:
S7:基于需求资源和各个集群的任务处理能力确定第二集群,其中,第二集群包括任务处理能力大于需求资源且与需求资源最接近的集群,和任务处理能力小于需求资源且与需求资源最接近的集群。
如:没有闲置服务器,则基于需求资源40G和每个集群的任务处理能力确定第二集群。以上述步长30G为例,则第二集群包括任务处理能力为30G的集群,以及任务处理能力为60G的集群。
S8:获取第二集群内剩余资源最大的服务器,并基于第二集群内剩余资源最大的服务器构建缓冲集群。
在一些实施例中,如:任务处理能力为30G的集群为a,任务处理能力为60G的集群为b。则获取a和b中所有的服务器的剩余资源,并从中选择剩余资源最大的服务器,以便根据该服务器构建缓冲集群。
在另一些实施例中,如:任务处理能力为30G的集群为a,任务处理能力为60G的集群为b。则分别获取a和b中所有的服务器的剩余资源,并分别从a中选择剩余资源最大的服务器,和从b中选择剩余资源最大的服务器,以便根据a中的剩余资源最大的服务器和b中的剩余资源最大的服务器构建缓冲集群。
其中,缓冲集群内的服务器既可以处理需求资源为30G的任务,又可以处理需求资源为60G的任务。
S9:根据需求资源和缓冲集群内每个服务器的剩余资源,对待分配的任务进行分配。
具体地:判断缓冲集群内每个服务器的剩余资源与需求资源的大小,选取剩余资源大于或等于需求资源的服务器,如果服务器的数量为一个,则将待分配的任务分配至该服务器。如果服务器的数量为多个,则可将待分配的任务随机分配至多个服务器中的任意一个。或者,将多个服务器的剩余资源进行比较,从中选取最大剩余资源对应的服务器,以便将待分配的任务分配至该服务器。
通过本公开实施例提供的构建缓冲集群的技术方案,可有效避免资源分配的碎片化,实现集群之间的灵活拆借,提高资源利用率的技术效果。
结合图4可知,在一些实施例中,该方法还包括:
S21:判断执行任务的服务器是否为任意一个缓冲集群中的服务器,若不是,则执行S22,若是,则执行S28。
需要说明的是,该步骤为与任务分配或具体任务执行的并行步骤。即,该步骤可与任务分配的步骤同时执行,也可与任务执行的步骤同时执行。其中,可通过设置时间间隔,以该时间间隔判断执行任务的服务器是否为任意一个缓冲集群中的服务器。即,每隔一定的时间(如0.5s)执行判断的步骤。
S22:确定执行任务的服务器所属的第三集群。
也就是说,所有集群中,包括缓冲集群和非缓冲集群(在本实施例中,只有当某集群为缓冲集群时,才会特别指明为缓冲集群,而非缓冲集群均称为集群,如该步骤中的第三集群)。如果执行任务的服务器不属于缓冲集群,则必然属于非缓冲集群。则确定执行任务的服务器所属的第三集群。
S23:获取与第三集群相关的第一缓冲集群,其中,第一缓冲集群内至少包括与第三集群的任务处理能力相同的服务器。
其中,与第三集群相关的第一缓冲集群可能为一个,也可能为两个。如:第三集群的任务处理能力为60G,则与其相关的第一缓冲集群可能是包括既能处理需求资源为30G的任务,又能处理需求资源为60G的任务的缓冲集群。还可能是包括既能处理需求资源为60G的任务,又能处理需求资源为90G的任务的缓冲集群。
S24:针对第一缓冲集群内的每个服务器,分别判断每个服务器的任务列表中的任务的需求资源是否相同。
其中,第一缓冲集群内的每个服务器均对应一个任务列表,可通过服务器的任务列表获知该服务器正在执行的任务的需求资源,如果该服务器在执行了当前的任务后,还有正在排队的任务,则根据该任务列表还可获知该服务器即将执行的任务的需求资源。
若相同,则执行S25,否则结束流程。
S25:确定与相同需求资源对应的任务处理能力的第四集群。
如:服务器D为第一缓冲集群内的服务器,服务器D对应任务列表d。通过任务列表d可知,服务器D当前正在执行任务X,且任务X的需求资源为30G。且通过任务列表d可知,还有两个任务正在排队,等待被服务器D执行。两个任务分别为任务Y和任务Z,且任务Y和任务Z的需求资源均为30G。则确定任务处理能力为30G的集群(即第四集群)。
需要说明的是,若通过任务列表d的可知,服务器D当前正在执行任务X,且任务X的需求资源为60G。且通过任务列表d可知,还有两个任务正在排队,等待被服务器D执行。两个任务分别为任务Y和任务Z,且任务Y和任务Z的需求资源均为60G。则确定任务处理能力为60G的集群。即,此时,第四集群即为第三集群。
S26:从第四集群内获取剩余资源最大的第二服务器。
具体地,获取任务处理能力为60G的集群(即第四集群)内每个服务器的剩余资源,并将每个服务器的剩余资源进行比较,从中选取剩余资源最大的服务器(即第二服务器)。
S27:响应于第一缓冲集群内任务列表中的任务的需求资源相同的服务器的剩余资源小于第二服务器的剩余资源,将第二服务器添加至第一缓冲集群。
在该步骤中,将第一缓冲集群内的服务器D的剩余资源与第二服务器的剩余资源进行比较,如果服务器D的剩余资源小于第二服务器的剩余资源,则将第二服务器添加至第一缓冲集群。
在一些实施例中,优选地,为确保每个集群(缓冲集群和非缓冲集群)内的服务器的平衡,以确保对任务的处理的及时性和高效性。当第二服务器的数量为多个时,则从中选取一个添加至第一缓冲集群。并将服务器D添加至第四集群。即,将服务器D与第二服务器进行互换。进而实现剩余资源少的服务器回归至常规集群(即非缓冲集群),防止任务碎片化,进一步提升剩余资源少的服务器的利用率;而将剩余资源大的服务器添加至缓冲集群,可以提升相邻两级任务(如60G需求资源的任务和30G需求资源的任务)的匹配率,如:当上下两级任务在各自集群内匹配失败时,都可以在缓存集群中与该剩余资源大的服务器进行匹配,从而实现任务高效分配的技术效果。
结合图4可知,在一些实施例中,如果执行任务的服务器是第二缓冲集群内的第三服务器,该方法还包括:
S28:获取第三服务器的任务列表。
也就是说,如果执行任务的服务器是缓冲集群内的服务器,且具体为第二缓冲集群内的第三服务器,则获取第三服务器的任务列表。
S29:判断第三服务器的任务列表中的任务的需求资源是否一致,若一致,则执行S30,否则,结束流程。
其中,判断步骤可参见上文,此处不再赘述。
S30:确定与第三服务器的任务列表中任务的需求资源对应的任务处理能力的第五集群。
S31:从第五集群内获取剩余资源最大的第四服务器。
S32:响应于第三服务器的剩余资源小于第四服务器的剩余资源,将第四服务器添加至第二缓冲集群。
同理,如果第三服务器的任务的需求资源一致,且为40G。则确定任务处理能力为40G的集群(即第五集群)。获取任务处理能力为40G的集群(即第五集群)内每个服务器的剩余资源,并从中确定最大的剩余资源,并确定该最大的剩余资源的服务器(即第四服务器)。将第三服务器的剩余资源与第四服务器的剩余资源进行比较,并当第三服务器的剩余资源小于第四服务器的剩余资源时,将第四服务器添加至第二缓冲集群。
同理,在一些实施例中,优选地,为确保每个集群(缓冲集群和非缓冲集群)内的服务器的平衡,以确保对任务的处理的及时性和高效性。当第四服务器的数量为多个时,则从中选取一个添加至第二缓冲集群。并将第三服务器添加至第五集群。即,将第三服务器与第四服务器进行互换。进而实现剩余资源少的服务器回归至常规集群(即非缓冲集群),防止任务碎片化,进一步提升剩余资源少的服务器的利用率;而将剩余资源大的服务器添加至缓冲集群,可以提升相邻两级任务(如60G需求资源的任务和30G需求资源的任务)的匹配率,如:当上下两级任务在各自集群内匹配失败时,都可以在缓存集群中与该剩余资源大的服务器进行匹配,从而实现任务高效分配的技术效果。
需要说明的是,在本公开实施例中的第一服务器、第二服务器、第三服务器,第一集群、第二集群、第三集群、第四集群、第五集群,以及第一缓冲集群、第二缓冲集群等只是为了用以区分不同的服务器,不同的集群以及不同的缓冲集群。
根据本公开实施例的另一个方面,本公开实施例还提供了一种任务分配系统。
请参阅图5,图5为根据本公开实施例提供的任务分配系统的模块示意图。
如图5所示,该系统包括:
获取模块1,用于获取待分配的任务的需求资源;
判断模块2,用于判断是否存在与需求资源对应的任务处理能力的第一集群;
获取模块2还用于,如果存在第一集群,则获取第一集群内每个服务器的剩余资源;
分配模块3,用于根据需求资源和每个剩余资源,对待分配的任务进行分配。
在一些实施例中,分配模块3具体用于:
响应于存在至少一个剩余资源大于或等于需求资源,获取剩余资源大于或等于需求资源的第一服务器,若第一服务器为多个,则将待分配的任务分配至其中的一个第一服务器;若第一服务器为一个,则将待分配的任务分配至该第一服务器。
在一些实施例中,若第一服务器为多个,则分配模块3具体用于:
将待分配的任务随机分配至其中任意一个第一服务器;或者,
将待分配的任务分配至多个第一服务器中剩余资源最小的服务器。
在一些实施例中,如果不存在第一集群,或者,每个剩余资源均小于需求资源,则判断模块2还用于,判断是否有闲置服务器;
如果有至少一个闲置服务器,则分配模块3还用于,将待分配的任务分配至至少一个闲置服务器中的一个闲置服务器。
结合图6可知,在一些实施例中,还包括:
确定模块4,用于基于需求资源和各个集群的任务处理能力确定第二集群,其中,第二集群包括任务处理能力大于需求资源且与需求资源最接近的集群,和任务处理能力小于需求资源且与需求资源最接近的集群;
获取模块1还用于,获取第二集群内剩余资源最大的服务器;
构建模块5,用于基于第二集群内剩余资源最大的服务器构建缓冲集群;
分配模块3还用于,根据需求资源和缓冲集群内每个服务器的剩余资源,对待分配的任务进行分配。
结合图6可知,在一些实施例中,还包括:
判断模块2还用于,判断执行任务的服务器是否为任意一个缓冲集群中的服务器;
确定模块4还用于,如果执行任务的服务器不是任意一个缓冲集群中的服务器,则确定执行任务的服务器所属的第三集群;
获取模块1还用于,获取与第三集群相关的第一缓冲集群,其中,第一缓冲集群内至少包括与第三集群的任务处理能力相同的服务器;
判断模块2还用于,针对第一缓冲集群内的每个服务器,分别判断每个服务器的任务列表中的任务的需求资源是否相同;
确定模块4还用于,若第一缓冲集群内存在任务列表中的任务的需求资源相同的服务器,则确定与相同需求资源对应的任务处理能力的第四集群;
获取模块1还用于,从第四集群内获取剩余资源最大的第二服务器;
添加模块6,用于响应于第一缓冲集群内任务列表中的任务的需求资源相同的服务器的剩余资源小于第二服务器的剩余资源,将第二服务器添加至第一缓冲集群。
在一些实施例中,如果执行任务的服务器是第二缓冲集群内的第三服务器,则获取模块1还用于,获取第三服务器的任务列表;
判断模块2还用于,判断第三服务器的任务列表中的任务的需求资源是否一致;
若一致,则确定模块4还用于,确定与第三服务器的任务列表中任务的需求资源对应的任务处理能力的第五集群;
获取模块1还用于,从第五集群内获取剩余资源最大的第四服务器;
添加模块6还用于,响应于第三服务器的剩余资源小于第四服务器的剩余资源,将第四服务器添加至第二缓冲集群。
在一些实施例中,添加模块6还用于:
响应于第一缓冲集群内任务列表中的任务的需求资源相同的服务器的剩余资源小于第二服务器的剩余资源,将第一缓冲集群内任务列表中的任务的需求资源相同的服务器添加至第四集群;和/或,
响应于第三服务器的剩余资源小于第四服务器的剩余资源,将第三服务器添加至第五集群。
根据本公开实施例提供的另一个方面,本公开实施例提供了一种电子设备,包括:
一个或多个处理器;
存储装置,其上存储有一个或多个程序,当一个或多个程序被一个或多个处理器执行,使得一个或多个处理器实现如上述任一实施例中所述的方法。
请参阅图7,图7为根据本公开实施例提供的电子设备的框架图。
图7显示的电子设备仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图7所示,电子设备以通用计算设备的形式表现。电子设备的组件可以包括但不限于:一个或者多个处理器或者处理单元11,存储器12,连接不同组件(包括存储器12和处理单元11)的总线13。
总线13表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(ISA)总线,微通道体系结构(MAC)总线,增强型ISA总线、视频电子标准协会(VESA)局域总线以及外围组件互连(PCI)总线。
电子设备典型地包括多种计算机系统可读介质。这些介质可以是任何能够被电子设备统访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。
存储器12可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(RAM)14和/或高速缓存15(即高速缓存存储器)。电子设备可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统16可以用于读写不可移动的、非易失性磁介质(图7未显示,通常称为“硬盘驱动器”)。尽管图7中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如CD-ROM,DVD-ROM或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线13相连。存储器12可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本发明各实施例的功能。
具有一组(至少一个)程序组件17的程序/实用工具18,可以存储在例如存储器12中,这样的程序组件17包括但不限于操作系统、一个或者多个应用程序、其它程序组件以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序组件17通常执行本发明所描述的实施例中的功能和/或方法。
电子设备也可以与一个或多个外部设备19(例如键盘、指向设备、显示器20等)通信,还可与一个或者多个使得用户能与该电子设备交互的设备通信,和/或与使得该电子设备能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口21进行。并且,电子设备还可以通过网络适配器22与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器22通过总线13与纠错装置的其它组件通信。应当明白,尽管图中未示出,可以结合纠错装置使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
处理单元11通过运行存储在存储器12中的多个程序中的至少一个程序,从而执行各种功能应用以及数据处理,例如实现本发明实施例所提供的任务分配方法。
根据本公开实施例提供的另一个方面,本公开实施例提供了一种计算机可读介质,其上存储有计算机程序,其中,程序被处理器执行时实现如上任一实施例所述的方法。
本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、系统、装置中的功能模块/单元可以被实施为软件、固件、硬件及其适当的组合。在硬件实施方式中,在以上描述中提及的功能模块/单元之间的划分不一定对应于物理组件的划分;例如,一个物理组件可以具有多个功能,或者一个功能或步骤可以由若干物理组件合作执行。某些物理组件或所有物理组件可以被实施为由处理器,如中央处理器、数字信号处理器或微处理器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。这样的软件可以分布在计算机可读介质上,计算机可读介质可以包括计算机存储介质(或非暂时性介质)和通信介质(或暂时性介质)。如本领域普通技术人员公知的,术语计算机存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、程序模块或其他数据)的任何方法或技术中实施的易失性和非易失性、可移除和不可移除介质。计算机存储介质包括但不限于RAM、ROM、EEPROM、闪存或其他存储器技术、CD-ROM、数字多功能盘(DVD)或其他光盘存储、磁盒、磁带、磁盘存储或其他磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其他的介质。此外,本领域普通技术人员公知的是,通信介质通常包含计算机可读指令、数据结构、程序模块或者诸如载波或其他传输机制之类的调制数据信号中的其他数据,并且可包括任何信息递送介质。
本文已经公开了示例实施例,并且虽然采用了具体术语,但它们仅用于并仅应当被解释为一般说明性含义,并且不用于限制的目的。在一些实例中,对本领域技术人员显而易见的是,除非另外明确指出,否则可单独使用与特定实施例相结合描述的特征、特性和/或元素,或可与其他实施例相结合描述的特征、特性和/或元件组合使用。因此,本领域技术人员将理解,在不脱离由所附的权利要求阐明的本公开的范围的情况下,可进行各种形式和细节上的改变。

Claims (18)

1.一种任务分配方法,包括:
获取待分配的任务的需求资源;
判断是否存在与所述需求资源对应的任务处理能力的第一集群;
如果存在所述第一集群,则获取所述第一集群内每个服务器的剩余资源;
根据所述需求资源和每个所述剩余资源,对所述待分配的任务进行分配。
2.根据权利要求1所述的方法,其中,所述根据所述需求资源和每个所述剩余资源,对所述待分配的任务进行分配,包括:
响应于存在至少一个剩余资源大于或等于所述需求资源,获取剩余资源大于或等于所述需求资源的第一服务器,若所述第一服务器为多个,则将所述待分配的任务分配至其中的一个第一服务器;若所述第一服务器为一个,则将所述待分配的任务分配至该第一服务器。
3.根据权利要求2所述的方法,其中,所述将所述待分配的任务分配至其中的一个第一服务器,包括:
将所述待分配的任务随机分配至其中任意一个第一服务器;或者,
将所述待分配的任务分配至多个所述第一服务器中剩余资源最小的服务器。
4.根据权利要求2或3所述的方法,其中,还包括:
如果不存在所述第一集群,或者,每个所述剩余资源均小于所述需求资源,则判断是否有闲置服务器;
如果有至少一个闲置服务器,则将所述待分配的任务分配至所述至少一个闲置服务器中的一个闲置服务器。
5.根据权利要求4所述的方法,其中,如果没有闲置服务器,则包括:
基于所述需求资源和各个集群的任务处理能力确定第二集群,其中,所述第二集群包括任务处理能力大于所述需求资源且与所述需求资源最接近的集群,和任务处理能力小于所述需求资源且与所述需求资源最接近的集群;
获取所述第二集群内剩余资源最大的服务器,并基于所述第二集群内剩余资源最大的服务器构建缓冲集群;
根据所述需求资源和所述缓冲集群内每个服务器的剩余资源,对所述待分配的任务进行分配。
6.根据权利要求5所述的方法,其中,还包括:
判断执行任务的服务器是否为任意一个缓冲集群中的服务器;
如果执行所述任务的服务器不是所述任意一个缓冲集群中的服务器,则确定执行所述任务的服务器所属的第三集群;
获取与所述第三集群相关的第一缓冲集群,其中,所述第一缓冲集群内至少包括与所述第三集群的任务处理能力相同的服务器;
针对所述第一缓冲集群内的每个服务器,分别判断每个服务器的任务列表中的任务的需求资源是否相同;
若所述第一缓冲集群内存在任务列表中的任务的需求资源相同的服务器,则确定与相同需求资源对应的任务处理能力的第四集群;
从所述第四集群内获取剩余资源最大的第二服务器;
响应于所述第一缓冲集群内任务列表中的任务的需求资源相同的服务器的剩余资源小于所述第二服务器的剩余资源,将所述第二服务器添加至所述第一缓冲集群。
7.根据权利要求6所述的方法,其中,还包括:
如果执行所述任务的服务器是第二缓冲集群内的第三服务器,则获取所述第三服务器的任务列表;
判断所述第三服务器的任务列表中的任务的需求资源是否一致;
若一致,则确定与所述第三服务器的任务列表中任务的需求资源对应的任务处理能力的第五集群;
从所述第五集群内获取剩余资源最大的第四服务器;
响应于所述第三服务器的剩余资源小于所述第四服务器的剩余资源,将所述第四服务器添加至所述第二缓冲集群。
8.根据权利要求7所述的方法,其中,还包括:
响应于所述第一缓冲集群内任务列表中的任务的需求资源相同的服务器的剩余资源小于所述第二服务器的剩余资源,将所述第一缓冲集群内任务列表中的任务的需求资源相同的服务器添加至所述第四集群;和/或,
响应于所述第三服务器的剩余资源小于所述第四服务器的剩余资源,将所述第三服务器添加至所述第五集群。
9.一种任务分配系统,包括:
获取模块,用于获取待分配的任务的需求资源;
判断模块,用于判断是否存在与所述需求资源对应的任务处理能力的第一集群;
所述获取模块还用于,如果存在所述第一集群,则获取所述第一集群内每个服务器的剩余资源;
分配模块,用于根据所述需求资源和每个所述剩余资源,对所述待分配的任务进行分配。
10.根据权利要求9所述的系统,其中,所述分配模块具体用于:
响应于存在至少一个剩余资源大于或等于所述需求资源,获取剩余资源大于或等于所述需求资源的第一服务器,若所述第一服务器为多个,则将所述待分配的任务分配至其中的一个第一服务器;若所述第一服务器为一个,则将所述待分配的任务分配至该第一服务器。
11.根据权利要求10所述的系统,其中,若所述第一服务器为多个,则所述分配模块具体用于:
将所述待分配的任务随机分配至其中任意一个第一服务器;或者,
将所述待分配的任务分配至多个所述第一服务器中剩余资源最小的服务器。
12.根据权利要求10或11所述的系统,其中,
如果不存在所述第一集群,或者,每个所述剩余资源均小于所述需求资源,则所述判断模块还用于,判断是否有闲置服务器;
如果有至少一个闲置服务器,则所述分配模块还用于,将所述待分配的任务分配至所述至少一个闲置服务器中的一个闲置服务器。
13.根据权利要求12所述的系统,其中,还包括:
确定模块,用于基于所述需求资源和各个集群的任务处理能力确定第二集群,其中,所述第二集群包括任务处理能力大于所述需求资源且与所述需求资源最接近的集群,和任务处理能力小于所述需求资源且与所述需求资源最接近的集群;
所述获取模块还用于,获取所述第二集群内剩余资源最大的服务器;
构建模块,用于基于所述第二集群内剩余资源最大的服务器构建缓冲集群;
所述分配模块还用于,根据所述需求资源和所述缓冲集群内每个服务器的剩余资源,对所述待分配的任务进行分配。
14.根据权利要求13所述的系统,其中,
所述判断模块还用于,判断执行任务的服务器是否为任意一个缓冲集群中的服务器;
所述确定模块还用于,如果执行所述任务的服务器不是所述任意一个缓冲集群中的服务器,则确定执行所述任务的服务器所属的第三集群;
所述获取模块还用于,获取与所述第三集群相关的第一缓冲集群,其中,所述第一缓冲集群内至少包括与所述第三集群的任务处理能力相同的服务器;
所述判断模块还用于,针对所述第一缓冲集群内的每个服务器,分别判断每个服务器的任务列表中的任务的需求资源是否相同;
所述确定模块还用于,若所述第一缓冲集群内存在任务列表中的任务的需求资源相同的服务器,则确定与相同需求资源对应的任务处理能力的第四集群;
所述获取模块还用于,从所述第四集群内获取剩余资源最大的第二服务器;
添加模块,用于响应于所述第一缓冲集群内任务列表中的任务的需求资源相同的服务器的剩余资源小于所述第二服务器的剩余资源,将所述第二服务器添加至所述第一缓冲集群。
15.根据权利要求14所述的系统,其中,
如果执行所述任务的服务器是第二缓冲集群内的第三服务器,则所述获取模块还用于,获取所述第三服务器的任务列表;
所述判断模块还用于,判断所述第三服务器的任务列表中的任务的需求资源是否一致;
若一致,则所述确定模块还用于,确定与所述第三服务器的任务列表中任务的需求资源对应的任务处理能力的第五集群;
所述获取模块还用于,从所述第五集群内获取剩余资源最大的第四服务器;
所述添加模块还用于,响应于所述第三服务器的剩余资源小于所述第四服务器的剩余资源,将所述第四服务器添加至所述第二缓冲集群。
16.根据权利要求15所述的系统,其中,所述添加模块还用于:
响应于所述第一缓冲集群内任务列表中的任务的需求资源相同的服务器的剩余资源小于所述第二服务器的剩余资源,将所述第一缓冲集群内任务列表中的任务的需求资源相同的服务器添加至所述第四集群;和/或,
响应于所述第三服务器的剩余资源小于所述第四服务器的剩余资源,将所述第三服务器添加至所述第五集群。
17.一种电子设备,包括:
一个或多个处理器;
存储装置,其上存储有一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1至8中任一所述的方法。
18.一种计算机可读介质,其上存储有计算机程序,其中,所述程序被处理器执行时实现如权利要求1至8中任一所述的方法。
CN201910180344.8A 2019-03-11 2019-03-11 任务分配方法和系统、电子设备、计算机可读介质 Active CN109976907B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910180344.8A CN109976907B (zh) 2019-03-11 2019-03-11 任务分配方法和系统、电子设备、计算机可读介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910180344.8A CN109976907B (zh) 2019-03-11 2019-03-11 任务分配方法和系统、电子设备、计算机可读介质

Publications (2)

Publication Number Publication Date
CN109976907A true CN109976907A (zh) 2019-07-05
CN109976907B CN109976907B (zh) 2021-08-31

Family

ID=67078460

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910180344.8A Active CN109976907B (zh) 2019-03-11 2019-03-11 任务分配方法和系统、电子设备、计算机可读介质

Country Status (1)

Country Link
CN (1) CN109976907B (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111124688A (zh) * 2019-12-31 2020-05-08 青梧桐有限责任公司 服务器资源控制方法和系统
CN111625339A (zh) * 2020-05-28 2020-09-04 网易有道信息技术(北京)有限公司 集群资源调度方法、装置、介质和计算设备
CN111782383A (zh) * 2020-08-26 2020-10-16 北京元心科技有限公司 任务分配方法、服务器、电子终端及计算机可读存储介质
WO2021068585A1 (zh) * 2019-10-08 2021-04-15 支付宝(杭州)信息技术有限公司 资源处理方法、装置、电子设备及介质
CN112905350A (zh) * 2021-03-22 2021-06-04 北京市商汤科技开发有限公司 任务调度方法及装置、电子设备和存储介质
CN113886050A (zh) * 2021-10-21 2022-01-04 中国联合网络通信集团有限公司 压力测试方法、装置、设备和存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103870339A (zh) * 2014-03-06 2014-06-18 上海华为技术有限公司 一种集群资源分配方法及装置
CN104580338A (zh) * 2013-10-29 2015-04-29 华为技术有限公司 一种业务处理方法、系统及设备
CN104699542A (zh) * 2015-03-31 2015-06-10 北京奇艺世纪科技有限公司 任务处理方法及系统
CN104834569A (zh) * 2015-05-11 2015-08-12 北京京东尚科信息技术有限公司 一种基于应用类型的集群资源调度方法及系统
US9794136B1 (en) * 2015-01-21 2017-10-17 Pivotal Software, Inc. Distributed resource allocation
US20180267835A1 (en) * 2015-12-07 2018-09-20 International Business Machines Corporation Managing provisioning for cloud resource allocations

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104580338A (zh) * 2013-10-29 2015-04-29 华为技术有限公司 一种业务处理方法、系统及设备
CN103870339A (zh) * 2014-03-06 2014-06-18 上海华为技术有限公司 一种集群资源分配方法及装置
US9794136B1 (en) * 2015-01-21 2017-10-17 Pivotal Software, Inc. Distributed resource allocation
CN104699542A (zh) * 2015-03-31 2015-06-10 北京奇艺世纪科技有限公司 任务处理方法及系统
CN104834569A (zh) * 2015-05-11 2015-08-12 北京京东尚科信息技术有限公司 一种基于应用类型的集群资源调度方法及系统
US20180267835A1 (en) * 2015-12-07 2018-09-20 International Business Machines Corporation Managing provisioning for cloud resource allocations

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021068585A1 (zh) * 2019-10-08 2021-04-15 支付宝(杭州)信息技术有限公司 资源处理方法、装置、电子设备及介质
CN111124688A (zh) * 2019-12-31 2020-05-08 青梧桐有限责任公司 服务器资源控制方法和系统
CN111625339A (zh) * 2020-05-28 2020-09-04 网易有道信息技术(北京)有限公司 集群资源调度方法、装置、介质和计算设备
CN111782383A (zh) * 2020-08-26 2020-10-16 北京元心科技有限公司 任务分配方法、服务器、电子终端及计算机可读存储介质
CN112905350A (zh) * 2021-03-22 2021-06-04 北京市商汤科技开发有限公司 任务调度方法及装置、电子设备和存储介质
CN113886050A (zh) * 2021-10-21 2022-01-04 中国联合网络通信集团有限公司 压力测试方法、装置、设备和存储介质
CN113886050B (zh) * 2021-10-21 2024-06-04 中国联合网络通信集团有限公司 压力测试方法、装置、设备和存储介质

Also Published As

Publication number Publication date
CN109976907B (zh) 2021-08-31

Similar Documents

Publication Publication Date Title
CN109976907B (zh) 任务分配方法和系统、电子设备、计算机可读介质
EP3223491B1 (en) Method and device for mapping virtual data centre resources
CN108776576B (zh) 用于聚合的网上NVMe装置的聚合存储方法
CN110324264B (zh) 分配系统资源的方法与系统
US9413683B2 (en) Managing resources in a distributed system using dynamic clusters
US8984085B2 (en) Apparatus and method for controlling distributed memory cluster
US10693806B2 (en) Network bandwidth reservations for system traffic and virtual computing instances
US8185905B2 (en) Resource allocation in computing systems according to permissible flexibilities in the recommended resource requirements
JP5680619B2 (ja) 優先度ベースのシステム負荷レベルを管理するためのシステムおよび方法
US20080162735A1 (en) Methods and systems for prioritizing input/outputs to storage devices
CN103180830A (zh) 中央处理器资源分配方法和计算节点
US10248460B2 (en) Storage management computer
JP7506096B2 (ja) 計算資源の動的割り当て
US20230100484A1 (en) Serverless function colocation with storage pools
CN109032788B (zh) 预留资源池动态调度方法、装置、计算机设备及存储介质
US20110153971A1 (en) Data Processing System Memory Allocation
CN104410666A (zh) 云计算下实现异构存储资源管理的方法及系统
CN111290832B (zh) 一种基于国产硬件平台的虚拟化系统优化方法
JP2006018806A (ja) コンピュータ・ベース・システムにおける資源割当て方法
US20190065270A1 (en) Methods and modules relating to allocation of host machines
US11237745B2 (en) Computer system and volume arrangement method in computer system to reduce resource imbalance
US11307889B2 (en) Schedule virtual machines
CN117311910B (zh) 一种高性能虚拟密码机运行方法
KR20150095978A (ko) 클라우드 컴퓨팅에서의 컴퓨팅 노드의 로컬 디스크를 이용한 분산 스토리지 시스템
US20240248766A1 (en) Dynamic cpu core sharing

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
GR01 Patent grant
GR01 Patent grant