CN107133096A - 一种资源分配方法及装置 - Google Patents
一种资源分配方法及装置 Download PDFInfo
- Publication number
- CN107133096A CN107133096A CN201710240130.6A CN201710240130A CN107133096A CN 107133096 A CN107133096 A CN 107133096A CN 201710240130 A CN201710240130 A CN 201710240130A CN 107133096 A CN107133096 A CN 107133096A
- Authority
- CN
- China
- Prior art keywords
- resource
- hardware resource
- test assignment
- hardware
- value
- 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/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/5044—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 hardware capabilities
-
- 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/5015—Service provider selection
-
- 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/504—Resource capping
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明提供一种资源分配方法及装置,所述方法包括:根据硬件资源池中各硬件资源的标签价值确定各硬件资源的资源价值;当接收到测试任务时,根据所述硬件资源池中各硬件资源的标签确定满足所述测试任务的候选硬件资源,并根据各候选硬件资源的资源价值确定分配给所述测试任务的硬件资源。应用本发明实施例可以提高资源分配的可控性。
Description
技术领域
本发明涉及互联网技术领域,尤其涉及一种资源分配方法及装置。
背景技术
在云测试系统中,硬件资源是由云测试平台来管理的,用户终端向云测试平台提交任务,并描述自己需要的硬件资源类型,由云测试平台为任务分配满足需求的硬件资源执行任务。
目前,云测试系统的资源分配方案中,当云测试平台接收到用户终端提交的任务时,云测试平台将随机从可用硬件资源中选择满足该任务的硬件资源分配给该用户终端以执行任务,资源分配可控性较差。
发明内容
本发明提供一种资源分配方法及装置,以解决现有云测试系统中资源分配可控性较差的问题。
根据本发明实施例的第一方面,提供一种资源分配方法,应用于云系统中的云平台,该方法包括:
根据硬件资源池中各硬件资源的标签价值确定各硬件资源的资源价值,所述硬件资源池中各硬件资源配置有一个或多个标签;
当接收到测试任务时,根据所述硬件资源池中各硬件资源的标签确定满足所述测试任务的候选硬件资源;其中,所述测试任务以标签的方式描述自身对硬件资源的需求;
根据各候选硬件资源的资源价值确定分配给所述测试任务的硬件资源。
根据本发明实施例的第二方面,提供一种资源分配装置,应用于云系统中的云平台,该装置包括:
第一确定单元,用于根据硬件资源池中各硬件资源的标签价值确定各硬件资源的资源价值,所述硬件资源池中各硬件资源配置有一个或多个标签;
接收单元,用于接收测试任务;
第二确定单元,用于当所述接收单元接收到测试任务时,根据所述硬件资源池中各硬件资源的标签确定满足所述测试任务的候选硬件资源;其中,所述测试任务以标签的方式描述自身对硬件资源的需求;
资源分配单元,用于根据各候选硬件资源的资源价值确定分配给所述测试任务的硬件资源。
应用本发明实施例,通过根据硬件资源池中各硬件资源的标签价值确定各硬件资源的资源价值,当接收到用户终端提交的测试任务时,根据硬件资源池中各硬件资源的标签确定满足所述测试任务需求的候选硬件资源,并根据各候选硬件资源的资源价值确定分配给测试任务的硬件资源,提高了资源分配的可控性。
附图说明
图1是本发明实施例提供的一种云系统的架构示意图;
图2是本发明实施例提供的一种资源分配方法的流程示意图;
图3A~3B是本发明实施例提供的任务调度的示意图;
图4是本发明实施例提供的一种资源分配装置的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明实施例中的技术方案,下面先对本发明实施例适用的系统架构进行简单说明。
请参见图1,为本发明实施例提供的一种云系统的架构示意图,如图1所示,云系统可以包括Web服务器和后台服务器(或称为应用服务器)(该Web服务器和后台服务器可以统称为云平台);其中,后台服务器中存储有预先配置的各标签的价值;Web服务器包含数据库功能,且配置有连接硬件资源池中各硬件资源(包括PC(Personal Computer,个人计算机)、手机等)的管理口以及各硬件资源的访问参数,包括IP(Internet Protocol,互联网协议)地址、用户名及密码等,应用服务器可以根据各硬件资源的访问参数,通过该管理口,获取各硬件资源的软硬件参数,并为各硬件资源打上对应的标签,进而根据后台服务器中存储的各标签的价值,确定各硬件资源的价值,并将其保存至数据库中。另外,对于云平台而言,包括Web服务器和后台服务器仅为其中一种组成方式,也可由一台服务器形成,该服务器分别包含Web服务器和后台服务器的功能,或者,也可以由一台虚拟机虚拟出Web服务器和后台服务器的功能的形式实现。
测试用户可以通过用户终端登陆到Web服务器的相关功能界面,向Web服务器提供测试任务。Web服务器接收到测试任务时,根据该测试任务所对应的标签确定满足该测试任务的硬件资源(本文中称为候选硬件资源),并根据各候选硬件资源的资源价值为该测试任务进行资源分配。
其中,硬件资源的软硬件参数可以包括但不限于硬件资源的品牌、操作系统类型、操作系统版本、操作系统架构、操作系统用途、处理器类型、处理器品牌、网络类型、屏幕分辨率等。
举例来说,假设硬件资源池中的硬件资源包括一台品牌A的手机,且该手机的操作系统为操作系统A,网络类型为网络类型A、CPU(Center Process Unit,中央处理单元)类型为CPU类型A,则该手机的标签可以包括:品牌A、操作类型A、网络类型A以及CPU类型A。
值得说明的是,在本发明实施例中,同一操作系统类型的不同版本可以对应不同的标签。
为了使本发明实施例的上述目的、特征和优点能够更加明显易懂,下面结合附图对本发明实施例中技术方案作进一步详细的说明。
请参见图2,为本发明实施例提供的一种资源分配方法的流程示意图,其中,该方法可以应用于云系统中的云平台,如图2所示,该资源分配方法可以包括以下步骤:
步骤201、根据硬件资源池中各硬件资源的标签价值确定各硬件资源的资源价值;其中,硬件资源池中各硬件资源配置有一个或多个标签。
本发明实施例中,为了提高云系统中资源分配的可控性,可以预先对硬件资源池中各硬件资源进行资源价值评估,以确定各硬件资源的资源价值,进而可以根据硬件资源的资源价值为接收到的任务分配满足任务需求的硬件资源。
其中,硬件资源的价值可以用于表征测试任务对硬件资源的需求,硬件资源的价值越高,该类型的硬件资源容易产生等待的情况(即可能会有多个测试任务需要使用该硬件资源,但该硬件资源已被其中一个测试任务或其它测试任务占用);相反地,硬件资源的价值越低,该类型的硬件资源较少出现等待的情况。
本发明实施例中,Web服务器可以根据预先配置的各硬件资源的访问参数(如IP地址)获取各硬件资源的软硬件参数,根据各硬件资源的软硬件参数为各硬件资源打上对应的标签,并将硬件资源的访问参数与标签的对应关系保存到数据库中。
举例来说,假设硬件资源池中包括3个硬件资源,其IP地址分别为IP1、IP2以及IP3,Web服务器可以根据各硬件资源的IP地址分别获取各硬件资源的软硬件参数,并为各硬件资源打上对应的标签。
例如,对于硬件资源1(IP地址为IP1),Web服务器可以根据其IP地址(即IP地址1)连接该硬件资源1,并扫描该硬件资源1的软硬件参数,以硬件资源1为路由器为例,Web服务器可以扫描确定该路由器的设备品牌、设备形态(集中式或分布式等)以及主控板形态(单主控、多主控或堆叠等)等。假设硬件资源1为设备品牌为品牌A,设备形态为集中式,主控板形态为单主控,则硬件资源1的标签可以包括“品牌A”、“集中式”、“单主控”。
假设硬件资源1对应的标签包括标签1、标签2、标签3;硬件资源2(IP地址为IP2)对应的标签包括标签1、标签4和标签5;硬件资源3(IP地址为IP3)对应的标签包括标签3和标签5,则Web服务器可以在数据库中保存如下对应关系:
表1
硬件资源 | IP地址 | 标签 |
硬件资源1 | IP1 | 标签1、标签2、标签3 |
硬件资源2 | IP2 | 标签1、标签4、标签5 |
硬件资源3 | IP3 | 标签3、标签5 |
本发明实施例中,Web服务器可以根据硬件资源池中各硬件资源的标签价值确定各硬件资源的资源价值。
其中,硬件资源的标签价值可以由硬件资源包括的各标签的分值之和确定,单个标签的分值可以由标签对应的资源的价值、用户需求频度等确定。
举例来说,以表1中所示硬件资源1为例,当需要确定硬件资源1的标签价值时,Web服务器可以获取表1中保存的硬件资源1的标签(即标签1、标签2和标签3),并向后台服务器发送针对标签1、标签2和标签3的标签价值查询请求,后台服务器接收到Web服务器发送的标签价值查询请求之后,可以根据该标签价值查询请求中携带的标签查询预先配置的各标签的标签价值,并将查询到的标签1、标签2和标签3的标签价值返回给Web服务器;假设标签1、标签2和标签3的标签价值分别为a1、a2和a3,则硬件资源1的标签价值为(a1+a2+a3)。
进一步地,在本发明实施例中,考虑到不同硬件资源包括的标签的个数相差可能会比较大,相应地,按照标签分值计算出的硬件资源的标签价值的相差也会比较大,因此,在计算硬件资源的标签价值时,可以将各硬件资源的标签的总分值计算为标准分值,并将该标准分值确定为硬件资源的标签价值。
例如,对于硬件资源池中的所有硬件资源,将标签的总分值最高的硬件资源的标签的总分值设定为100;其余硬件资源的标签分值按照其分值占标签的总分值最高的标签分值的百分比计算标签分值。
举例来说,假设硬件资源池中标签的总分值最高值为150,次高的为120,则该两个硬件资源的标签价值分别为100和80((120/150)*100)。
本发明实施例中,Web服务器确定了硬件资源的标签价值之后,可以将该硬件资源的标签价值作为硬件资源的资源价值。
进一步地,在本发明其中一个实施例中,根据硬件资源池中各硬件资源的标签价值确定各硬件资源的资源价值,可以包括:
根据硬件资源池中各硬件资源的标签价值以及资源稀有度确定各硬件资源的资源价值。
在该实施例中,考虑到硬件资源越稀缺,该硬件资源产生等待的概率越大,在给测试任务分配硬件资源时,当存在多个硬件资源满足需求时,应该优选不稀缺的硬件资源,以便稀缺的硬件资源能够用于满足其他对硬件资源要求更为苛刻的测试任务。
相应地,在该实施例中,Web服务器确定硬件资源的资源价值除了需要参考硬件资源的标签价值之外,还需要参考硬件资源的资源稀有度;其中,标签价值相同的硬件资源的资源价值与硬件资源的资源稀有度正相关。
在该实施例中,资源稀有度可以用于描述硬件资源在硬件资源池中的稀有程度,其可以通过硬件资源包括的标签的稀有程度来确定。其中,标签的稀有程度可以通过包含该标签的硬件资源的数量与硬件资源的总数的比值确定。
举例来说,硬件资源的资源稀有度可以通过以下方式确定:
1)、统计资源池中各标签的出现频率,按0%~10%、11~20%……91%~100%分为10档;
其中,假设硬件资源池中共包含X个硬件资源,其中Y个硬件资源包含标签1,则标签1的出现频率为Y/X*100%;0<Y≤X。
2)、按照步骤1中统计的标签的出现频率,为各个标签计算稀有度分值(每个标签10~1分);
其中,标签的出现频率分别为0%~10%、11~20%……91%~100%,对应的标签稀有度分值分别为10~1分。
3、将各资硬件源包括的所有标签的稀有度总分确定为该硬件资源的资源稀有度。
进一步优选地,在确定了各硬件资源的资源稀有度之后,可以将资源稀有度最高的硬件资源的资源稀有度设置为100,并以此为参照计算各硬件资源的资源稀有度的标准值。
例如,假设硬件资源池中硬件资源的最高资源稀有度为150,次高资源稀有度为120,则硬件资源的资源稀有度的标准值的最高值为100,次高值为80((120/150)*100)。
进一步地,在本发明其中一个实施例中,根据硬件资源池中各硬件资源的标签价值确定各硬件资源的资源价值,可以包括:
根据硬件资源池中各硬件资源的标签价值、资源稀有度以及资源历史利用率确定各硬件资源的资源价值。
在该实施例中,考虑到一个硬件资源的历史利用率越高,表明测试任务对该硬件资源的需求量越高,也即,该硬件资源满足测试任务的需求的概率越高。
相应地,在该实施例中,Web服务器确定硬件资源的资源价值除了需要参考硬件资源的标签价值以及资源稀有度之外,还需要参考硬件资源的资源历史利用率;其中,标签价值以及资源稀有度相同的硬件资源的资源价值与硬件资源的资源历史利用率正相关。
在该实施例中,硬件资源的资源历史利用率可以为硬件资源在最近一段时间(如一个月、三个月、一周等)内被使用的时间与统计时间的比值。
例如,假设统计时间为最近一个月(以30天为例),硬件资源A在统计时间内被使用的时间为15天,则硬件资源A的资源历史利用率为0.5(15/30=0.5)。
进一步地,考虑到用户对硬件资源的需求是变化的,因此,对于不同时间段的在确定资源历史利用率时,可以对不同时间段的利用率设置不同的权重。其中,与当前时间越接近的时间段的利用率的权重越高。
举例来说,在该实施例中,硬件资源的资源历史利用率可以通过以下公式计算:
资源历史利用率=最近一周利用率*0.6+最近一个月的利用率*0.3+最近三个月的利用率*0.1
在该实施例中,Web服务器确定了各硬件资源的资源历史利用率之后,可以将其转化为0~100之间的值。
例如,资源历史利用率为x%的对应的值为x;其中,0≤x≤100。
在该实施例中,Web服务器可以根据硬件资源的标签价值、资源历史利用率以及资源稀有度确定硬件资源的资源价值。
例如,Web服务器可以通过以下公式计算硬件资源的资源价值:
资源价值=(标签价值^2)+(资源历史利用率^2)+(资源稀有度^2)
本发明实施中,Web服务器确定各硬件资源的资源价值之后,可以将其保存在数据库中,以便后续确定了候选硬件资源之后可以根据各候选资源的资源价值对各候选硬件资源进行排序。
应该认识到,上述方法实施例中描述的确定硬件资源池中各硬件资源的资源价值的具体实现仅仅是本发明实施例提供的技术方案中确定硬件资源的资源价值的具体示例,而不属于对本发明保护范围的限定,也即在本发明实施例中,也可以通过其它方式确定硬件资源的资源价值,例如,用户可以通过一定的策略(具体策略可以由用户根据实际场景设定)为云测试系统中各硬件资源配置资源价值,并以配置文件的形式保存到云测试平台或指定数据库中,相应地,云测试平台可以通过读取本地保存或指定数据库中保存的配置文件的方式确定云测试系统中各硬件资源的资源价值,其具体实现在此不做赘述。
步骤202、当接收到测试任务时,根据硬件资源池中各硬件资源的标签确定满足测试任务的候选硬件资源;其中,测试任务以标签的方式描述自身对硬件资源的需求。
本发明实施例中,测试任务需要通过标签的方式描述自身对硬件资源的需求,即测试任务中需要包括满足测试任务需求所需要的标签。Web服务器接收到测试任务时,可以根据该测试任务所需要的标签以及预先保存的各硬件资源的标签,确定满足测试任务的硬件资源(本文中称为候选硬件资源)。
举例来说,某测试任务需要一部操作系统类型为A,CPU类型为B,网络类型为C的手机时,该测试任务对硬件资源的需求可以描述为“操作系统类型A”、“CPU类型B”以及“网络类型C”,Web服务器接收到该测试任务时,可以根据自身保存的各硬件资源的标签,将同时具有“操作系统类型A”、“CPU类型B”以及“网络类型C”这三个标签的硬件资源确定为该测试任务的候选硬件资源。
步骤203、根据各候选硬件资源的资源价值确定分配给测试任务的硬件资源。
本发明实施例中,Web服务器确定了满足测试任务需求的候选硬件资源之后,可以根据各候选硬件资源的资源价值确定分配给测试任务的硬件资源。
可见,在图2所示的方法流程中,通过确定硬件资源池中各硬件资源的资源价值,在确定了满足测试任务需求的候选硬件资源时,根据各候选硬件资源的资源价值确定分配给测试任务的硬件资源,与现有资源分配方案中随机选择满足测试任务需求的硬件资源的资源分配方案相比,提高了资源分配可控性。
进一步地,在本发明其中一个实施例中,根据各候选硬件资源的资源价值确定分配给该测试任务的硬件资源,包括:
当测试任务为资源验证类型的测试任务时,按照各候选硬件资源的资源价值从高到低的顺序为该测试任务分配硬件资源;
当测试任务为资源占用类型的测试任务时,按照各候选硬件资源的资源价值从低到高的顺序为该测试任务分配硬件资源。
在该实施例中,测试任务除了可以包括任务对应的标签之外,还可以包括测试任务的任务类型。
其中,资源验证类型的测试任务主要用于判断云测试系统中的硬件资源是否存在能够执行该测试任务的硬件资源,此时并不实际占用硬件资源;资源占用类型的测试任务则需要实际占用硬件资源以执行测试任务。
相应地,在该实施方式中,当Web服务器接收到资源验证类型的测试任务时,为了提高响应效率,Web服务器可以按照资源价值从高到低的顺序,优先判断资源价值最高的候选硬件资源是否能够执行接收到的测试任务,若能够执行,则确定云测试系统中存在能够执行该测试任务的硬件资源;否则,判断资源价值次高的候选硬件资源是否能够执行接收到的测试任务,直至确定存在能够执行该测试任务的硬件资源,或确定所有候选硬件资源均不能执行接收到的测试任务。
当Web服务器接收到的测试任务为资源占用类型任务时,Web服务器可以按照资源价值从低到高的顺序,优先判断资源价值最低的候选硬件资源是否能够执行接收到的测试任务,若能够,则将该资源价值最低的候选硬件资源分配给该测试任务;否则,判断资源价值次低的候选硬件资源是否能够执行接收到的测试任务,直至确定资源价值最低且能够执行接收到的测试任务的候选硬件资源,并将该候选硬件资源分配给测试任务;或者,确定所有候选硬件资源均不能执行该测试任务。其中,由于资源价值越高,其能满足后续测试任务需求的可能性也越高,因此,优先为测试任务分配资源价值低的硬件资源,能够有效地减少后续测试任务等待硬件资源的总时间,提高资源利用率。
需要说明的是,下文中若未特殊说明,所提及的测试任务均为资源占用类型的测试任务为例。
进一步地,在本发明实施例中,考虑到Web服务器经常会接收到多个并发的测试任务,而硬件资源池中的硬件资源通常不足以同时运行所有测试任务,也即部分测试任务需要等待硬件资源,因此,当存在多个并发测试任务时,需要对各测试任务进行排序,合理的排序规则能够有效地降低总的排队等待时间,提高测试任务的执行效率。
相应地,在本发明实施例中,对于多个并发的测试任务,Web服务器可以按照测试任务的优先级以及测试任务的资源匹配次数对各测试任务进行排序。
其中,对于优先级不同的并发测试任务,可以按照各测试任务优先级从高到低的顺序为各测试任务分配硬件资源;
对于优先级相同的并发测试任务,可以按照各测试任务的资源匹配方案从少到多的顺序为各测试任务分配资源。
其中,资源匹配次数为满足任务需求的完全不同的硬件资源分配方案的个数。
具体地,在本发明实施例中,当Web服务器接收到多个并发的测试任务时,Web服务器可以先确定各测试任务的优先级。对于优先级不同的测试任务,Web服务器可以先为优先级高的测试任务分配硬件资源,后为优先级低的测试任务分配硬件资源,其资源分配方式可以参见上述方案实施例中的相关描述。
当并发的多个测试任务中存在多个优先级相同的测试任务时,Web服务器可以确定各测试任务的资源匹配次数。
举例来说,假设某测试任务需要3部手机,其中一部手机(该示例中称为第一类型手机)需要具有标签1和标签2,一部手机(该示例称为第二类型手机)需要具有标签2和标签3,一部手机(该示例中称为第三类型手机)需要具有标签1和标签4,Web服务器接收到该测试任务时,确定存在5部第一类型手机(A1~A5)(资源价值从低到高排序,下同),3部第二类型手机(B1~B3)以及4部第三类型手机(C1~C4)。其中,Ai(i=1~5)、Bj(j=1~4)以及Ck(k=1~4)可能是同一部手机,且同一部手机,在第一类型手机中被选择时,在第二类型手机和第三类型手机中不能被选择。
在该示例中,以Ai、Bj以及Ck均互不相同为例,则Web服务器可以按照资源价值从低到高的顺序依次确定(A1、B1、C1)、(A1、B1、C2)…(A1、B1、C4)、(A1、B2、C1)…(A1、B2、C4)、(A1、B3、C1)…(A1、B3、C4)、(A2、B1、C1)…(A5、B3、C4)是否能够执行该测试任务,其中,当Web服务器确定了能够执行该测试任务的一个资源分配方案(Ai、Bj、Ck)中时,Web服务器可以将该Ai、Bj和Ck从候选硬件资源中删除,并继续对剩余的候选硬件资源进行上述处理,直至确定所有可能的资源分配方案。
假设Web服务器最终确定能够执行该测试任务的可选资源分配方案包括(A3、B1、C2)、(A4、B2、C3)以及(A5、B3、C4),则该测试任务的可选资源匹配方案的数量为3。
在本发明实施例中,考虑到可选资源匹配方案数量较少的测试任务对硬件资源的需求更加苛刻,容易依赖某些关键资源,当满足其需求的任何一个硬件资源被分配给其它测试任务,都可能导致该测试任务无法执行;而对于可选资源匹配方案数量较多的测试任务,即使满足其需求的一个或几个硬件资源被分配给其它测试任务,该测试任务也仍然可能会存在替代的资源分配方案,能够保证测试任务的执行,因此,优先为可选资源匹配方案数量少的测试任务分配硬件资源能够减少测试任务的等待时间,提高测试任务的执行效率。
相应地,在本发明实施例中,Web服务器确定了各测试任务的资源匹配方案数量之后,可以按照可选资源匹配方案从少到多的顺序为各测试任务分配资源。
例如,假设并发的测试任务1和测试任务2具有相同的优先级,且测试任务1的可选资源匹配方案数量为2,测试任务2的可选资源匹配方案数量为1,则云测试平台可以优先为测试任务2分配硬件资源,后为测试任务1分配硬件资源。
举例来说,在本发明实施例中,Web服务器计算所有并发测试任务的资源匹配次数,按照计算结果将测试任务分为M1、M2、M3、M4+四个队列,分别对应可选资源匹配方案数量为1、2、3和4次及以上的测试任务。在任务调度时,按照如下规则处理:
1)、调度任务时,先按照优先级排序,优先级相同的测试任务按照M1~M4+的顺序排序;
2)、对于相同优先级的测试任务,设置一个包含两个队列的“滑动执行窗口”,只有窗口内的测试任务可以得到资源分配并被执行。
请参见图3A,初始时,窗口包含M1和M2两个队列,只有这两个队列中的任务可以得到资源分配并被执行,M3和M4+队列等待。
当M1队列中的任务全部执行完毕后,窗口向下滑动,此时M2和M3队列的任务可以得到资源分配并被执行,M4+队列等待,其示意图如图3B所示。
通过以上描述可以看出,在本发明实施例提供的技术方案中,通过根据各硬件资源的标签价值确定硬件资源的资源价值,当接收到测试任务时,根据硬件资源池中各硬件资源的标签确定满足测试任务的候选硬件资源,并根据各候选硬件资源的资源价值确定分配给测试任务的硬件资源,提高了资源分配的可控性。
请参见图4,为本发明实施例提供的一种资源分配装置的结构示意图,其中,所述装置可以应用于上述方法实施例的云平台中,如图4所示,该资源分配装置可以包括:
第一确定单元410,用于根据硬件资源池中各硬件资源的标签价值确定各硬件资源的资源价值,所述硬件资源池中各硬件资源配置有一个或多个标签;
接收单元420,用于接收测试任务;
第二确定单元430,用于当所述接收单元接收到测试任务时,根据所述硬件资源池中各硬件资源的标签确定满足所述测试任务的候选硬件资源;其中,所述测试任务以标签的方式描述自身对硬件资源的需求;
资源分配单元440,用于根据各候选硬件资源的资源价值确定分配给所述测试任务的硬件资源。
在可选实施例中,所述第二确定单元430,具体用于根据硬件资源池中各硬件资源的标签价值以及资源稀有度确定各硬件资源的资源价值。
在可选实施例中,所述第二确定单元430,具体用于根据硬件资源池中各硬件资源的标签价值、资源稀有度以及资源历史利用率确定各硬件资源的资源价值。
在可选实施例中,所述资源分配单元440,具体用于当所述测试任务为资源验证类型的测试任务时,按照各候选硬件资源的资源价值从高到低的顺序为所述测试任务分配硬件资源;
当所述测试任务为资源占用类型的测试任务时,按照各候选硬件资源的资源价值从低到高的顺序为所述测试任务分配硬件资源。
在可选实施例中,所述第二确定单元430,还用于当存在多个优先级相同的并发的测试任务时,确定各测试任务的可选资源分配方案;
所述资源分配单元440,具体用于按照可选资源分配方案从少到多的顺序为各测试任务分配资源。
上述装置中各个单元的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本发明方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
由上述实施例可见,通过根据硬件资源池中各硬件资源的标签价值确定各硬件资源的资源价值,当接收到用户终端提交的测试任务时,根据硬件资源池中各硬件资源的标签确定满足所述测试任务需求的候选硬件资源,并根据各候选硬件资源的资源价值确定分配给测试任务的硬件资源,提高了资源分配的可控性。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本发明的其它实施方案。本申请旨在涵盖本发明的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本发明的一般性原理并包括本发明未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本发明的真正范围和精神由下面的权利要求指出。
应当理解的是,本发明并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本发明的范围仅由所附的权利要求来限制。
Claims (10)
1.一种资源分配方法,应用于云系统中的云平台,其特征在于,该方法包括:
根据硬件资源池中各硬件资源的标签价值确定各硬件资源的资源价值,所述硬件资源池中各硬件资源配置有一个或多个标签;
当接收到测试任务时,根据所述硬件资源池中各硬件资源的标签确定满足所述测试任务的候选硬件资源;其中,所述测试任务以标签的方式描述自身对硬件资源的需求;
根据各候选硬件资源的资源价值确定分配给所述测试任务的硬件资源。
2.根据权利要求1所述的方法,其特征在于,所述根据硬件资源池中各硬件资源的标签价值确定各硬件资源的资源价值,包括:
根据硬件资源池中各硬件资源的标签价值以及资源稀有度确定各硬件资源的资源价值。
3.根据权利要求1所述的方法,其特征在于,所述根据硬件资源池中各硬件资源的标签价值确定各硬件资源的资源价值,包括:
根据硬件资源池中各硬件资源的标签价值、资源稀有度以及资源历史利用率确定各硬件资源的资源价值。
4.根据权利要求1所述的方法,其特征在于,根据各候选硬件资源的资源价值确定分配给所述测试任务的硬件资源,包括:
当所述测试任务为资源验证类型的测试任务时,按照各候选硬件资源的资源价值从高到低的顺序为所述测试任务分配硬件资源;
当所述测试任务为资源占用类型的测试任务时,按照各候选硬件资源的资源价值从低到高的顺序为所述测试任务分配硬件资源。
5.根据权利要求1所述的方法,其特征在于,当存在多个优先级相同的并发的测试任务时,所述根据所述硬件资源池中各硬件资源的标签确定满足所述测试任务的候选硬件资源之后,还包括:
确定各测试任务的可选资源分配方案;
按照可选资源分配方案从少到多的顺序为各测试任务分配资源。
6.一种资源分配装置,应用于云系统中的云平台,其特征在于,该装置包括:
第一确定单元,用于根据硬件资源池中各硬件资源的标签价值确定各硬件资源的资源价值,所述硬件资源池中各硬件资源配置有一个或多个标签;
接收单元,用于接收测试任务;
第二确定单元,用于当所述接收单元接收到测试任务时,根据所述硬件资源池中各硬件资源的标签确定满足所述测试任务的候选硬件资源;其中,所述测试任务以标签的方式描述自身对硬件资源的需求;
资源分配单元,用于根据各候选硬件资源的资源价值确定分配给所述测试任务的硬件资源。
7.根据权利要求6所述的装置,其特征在于,
所述第二确定单元,具体用于根据硬件资源池中各硬件资源的标签价值以及资源稀有度确定各硬件资源的资源价值。
8.根据权利要求6所述的装置,其特征在于,
所述第二确定单元,具体用于根据硬件资源池中各硬件资源的标签价值、资源稀有度以及资源历史利用率确定各硬件资源的资源价值。
9.根据权利要求6所述的装置,其特征在于,
所述资源分配单元,具体用于当所述测试任务为资源验证类型的测试任务时,按照各候选硬件资源的资源价值从高到低的顺序为所述测试任务分配硬件资源;
当所述测试任务为资源占用类型的测试任务时,按照各候选硬件资源的资源价值从低到高的顺序为所述测试任务分配硬件资源。
10.根据权利要求6所述的装置,其特征在于,
所述第二确定单元,还用于当存在多个优先级相同的并发的测试任务时,确定各测试任务的可选资源分配方案;
所述资源分配单元,具体用于按照可选资源分配方案从少到多的顺序为各测试任务分配资源。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710240130.6A CN107133096A (zh) | 2017-04-13 | 2017-04-13 | 一种资源分配方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710240130.6A CN107133096A (zh) | 2017-04-13 | 2017-04-13 | 一种资源分配方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107133096A true CN107133096A (zh) | 2017-09-05 |
Family
ID=59715019
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710240130.6A Pending CN107133096A (zh) | 2017-04-13 | 2017-04-13 | 一种资源分配方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107133096A (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109117244A (zh) * | 2018-06-13 | 2019-01-01 | 成都颠峰科创信息技术有限公司 | 一种虚拟机资源申请排队机制的实现方法 |
CN109783236A (zh) * | 2019-01-16 | 2019-05-21 | 北京百度网讯科技有限公司 | 用于输出信息的方法和装置 |
CN111198766A (zh) * | 2020-01-06 | 2020-05-26 | 中科驭数(北京)科技有限公司 | 数据库访问操作部署方法、数据库访问方法及装置 |
CN111221644A (zh) * | 2018-11-27 | 2020-06-02 | 阿里巴巴集团控股有限公司 | 资源调度方法、装置及设备 |
CN111651349A (zh) * | 2020-05-26 | 2020-09-11 | 泰康保险集团股份有限公司 | 一种测试方法和装置 |
WO2021233298A1 (zh) * | 2020-05-20 | 2021-11-25 | 华为技术有限公司 | 多终端任务分配方法 |
CN114157701A (zh) * | 2021-11-19 | 2022-03-08 | 北京百度网讯科技有限公司 | 一种任务测试方法、装置、设备以及存储介质 |
CN115640109A (zh) * | 2022-11-04 | 2023-01-24 | 苏州阿基米德网络科技有限公司 | 一种任务调度方法、系统及客户端 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102917052A (zh) * | 2012-10-18 | 2013-02-06 | 曙光信息产业(北京)有限公司 | 一种云计算系统中资源分配的方法 |
CN103365713A (zh) * | 2012-04-01 | 2013-10-23 | 华为技术有限公司 | 一种资源的调度和管理方法及装置 |
CN103634330A (zh) * | 2012-08-20 | 2014-03-12 | 曙光信息产业(北京)有限公司 | 一种云计算环境下的资源自动分配方法 |
CN104038540A (zh) * | 2014-06-03 | 2014-09-10 | 山东乾云启创信息科技有限公司 | 一种应用代理服务器自动选择方法及系统 |
CN104348881A (zh) * | 2013-08-08 | 2015-02-11 | 中国电信股份有限公司 | 云管理平台中的用户资源划分方法与装置 |
-
2017
- 2017-04-13 CN CN201710240130.6A patent/CN107133096A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103365713A (zh) * | 2012-04-01 | 2013-10-23 | 华为技术有限公司 | 一种资源的调度和管理方法及装置 |
CN103634330A (zh) * | 2012-08-20 | 2014-03-12 | 曙光信息产业(北京)有限公司 | 一种云计算环境下的资源自动分配方法 |
CN102917052A (zh) * | 2012-10-18 | 2013-02-06 | 曙光信息产业(北京)有限公司 | 一种云计算系统中资源分配的方法 |
CN104348881A (zh) * | 2013-08-08 | 2015-02-11 | 中国电信股份有限公司 | 云管理平台中的用户资源划分方法与装置 |
CN104038540A (zh) * | 2014-06-03 | 2014-09-10 | 山东乾云启创信息科技有限公司 | 一种应用代理服务器自动选择方法及系统 |
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109117244A (zh) * | 2018-06-13 | 2019-01-01 | 成都颠峰科创信息技术有限公司 | 一种虚拟机资源申请排队机制的实现方法 |
CN109117244B (zh) * | 2018-06-13 | 2021-12-03 | 成都颠峰科创信息技术有限公司 | 一种虚拟机资源申请排队机制的实现方法 |
CN111221644B (zh) * | 2018-11-27 | 2023-06-13 | 阿里巴巴集团控股有限公司 | 资源调度方法、装置及设备 |
CN111221644A (zh) * | 2018-11-27 | 2020-06-02 | 阿里巴巴集团控股有限公司 | 资源调度方法、装置及设备 |
CN109783236B (zh) * | 2019-01-16 | 2021-08-24 | 北京百度网讯科技有限公司 | 用于输出信息的方法和装置 |
CN109783236A (zh) * | 2019-01-16 | 2019-05-21 | 北京百度网讯科技有限公司 | 用于输出信息的方法和装置 |
CN111198766B (zh) * | 2020-01-06 | 2021-02-05 | 中科驭数(北京)科技有限公司 | 数据库访问操作部署方法、数据库访问方法及装置 |
CN111198766A (zh) * | 2020-01-06 | 2020-05-26 | 中科驭数(北京)科技有限公司 | 数据库访问操作部署方法、数据库访问方法及装置 |
WO2021233298A1 (zh) * | 2020-05-20 | 2021-11-25 | 华为技术有限公司 | 多终端任务分配方法 |
CN111651349A (zh) * | 2020-05-26 | 2020-09-11 | 泰康保险集团股份有限公司 | 一种测试方法和装置 |
CN114157701A (zh) * | 2021-11-19 | 2022-03-08 | 北京百度网讯科技有限公司 | 一种任务测试方法、装置、设备以及存储介质 |
CN114157701B (zh) * | 2021-11-19 | 2023-11-28 | 北京百度网讯科技有限公司 | 一种任务测试方法、装置、设备以及存储介质 |
CN115640109A (zh) * | 2022-11-04 | 2023-01-24 | 苏州阿基米德网络科技有限公司 | 一种任务调度方法、系统及客户端 |
CN115640109B (zh) * | 2022-11-04 | 2023-11-14 | 苏州阿基米德网络科技有限公司 | 一种任务调度方法、系统及客户端 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107133096A (zh) | 一种资源分配方法及装置 | |
US6226377B1 (en) | Prioritized transaction server allocation | |
Boloor et al. | Dynamic request allocation and scheduling for context aware applications subject to a percentile response time SLA in a distributed cloud | |
US9304817B2 (en) | Method and apparatus for a user-driven priority based job scheduling in a data processing platform | |
CN107391239B (zh) | 一种基于容器服务的调度方法和设备 | |
CN102402423A (zh) | 一种在网络设备中进行多任务处理的方法和设备 | |
CN106959894A (zh) | 资源分配方法和装置 | |
US7725900B2 (en) | Method of assigning objects to processing units | |
Regnell et al. | An analytical model for requirements selection quality evaluation in product software development | |
CN115134371A (zh) | 包含边缘网络算力资源的调度方法、系统、设备及介质 | |
CN108711020A (zh) | 配送任务分配方法、装置、电子设备及计算机存储介质 | |
CN110502321A (zh) | 一种资源调度方法及系统 | |
CN108847981A (zh) | 分布式计算机云计算处理方法 | |
Park et al. | Practical Human Resource Allocation in Software Projects Using Genetic Algorithm. | |
CN109062683A (zh) | 主机资源分配的方法、装置及计算机可读存储介质 | |
CN104009904B (zh) | 面向云平台大数据处理的虚拟网络构建方法及系统 | |
Hirth et al. | Task scheduling on crowdsourcing platforms for enabling completion time slas | |
CN116562477A (zh) | 工作组排产方案选取方法、装置、设备及存储介质 | |
CN115357401B (zh) | 一种基于多数据中心的任务调度与可视化方法和系统 | |
Zeng et al. | Effective role resolution in workflow management | |
CN110135685A (zh) | 一种产品设计任务的分配方法及装置 | |
WO2021068585A1 (zh) | 资源处理方法、装置、电子设备及介质 | |
US20210304220A1 (en) | Complex sourcing system | |
CN112925640A (zh) | 一种集群训练节点分配方法、电子设备 | |
CN113537909A (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 |
Application publication date: 20170905 |
|
RJ01 | Rejection of invention patent application after publication |