CN109783236A - 用于输出信息的方法和装置 - Google Patents
用于输出信息的方法和装置 Download PDFInfo
- Publication number
- CN109783236A CN109783236A CN201910040979.8A CN201910040979A CN109783236A CN 109783236 A CN109783236 A CN 109783236A CN 201910040979 A CN201910040979 A CN 201910040979A CN 109783236 A CN109783236 A CN 109783236A
- Authority
- CN
- China
- Prior art keywords
- client
- weight
- resource
- final weight
- history
- 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
Landscapes
- Information Transfer Between Computers (AREA)
Abstract
本申请实施例公开了用于输出信息的方法和装置。该方法的一具体实施方式包括:获取待分配的资源的总量和至少一个客户端的客户端信息和资源占用信息;对于至少一个客户端中的客户端,根据资源的总量和该客户端的资源占用信息确定该客户端的当前权重,获取该客户端的历史权重,以及根据该客户端的历史权重和该客户端的当前权重确定该客户端的最终权重;按照最终权重由小到大的顺序输出客户端的客户端信息。该实施方式具有很好的解释性和预测性,能大大减少常规资源分配方法带来的“饿死”情况发生,显著提升集群作业运行质量。
Description
技术领域
本公开的实施例涉及计算机技术领域,具体涉及用于输出信息的方法和装置。
背景技术
资源借用是指在分布式环境中,租户自身的资源总量不足以满足作业的资源需求,可以向分布式集群借用空闲资源以满足用户的作业需求。当多个租户同时向集群请求最后的一份空闲资源的时候,集群响应这些资源请求,以保证用户之间的公平性的方案如下所示:
1)随机借用方案:当多个用户同时请求资源借用的时候,***随机从这些用户中选择一个用户出来,让其获得对应的资源。其余的用户则进入等待状态,直到集群有足够的资源进行下一次响应。
2)基于用户的权重方案:集群优先给那些“权重”比较大的用户进行分配资源。这些权重常见的定义有:用户自身资源的大小(考虑用户在集群中的自身资源占比),用户自身的ID(考虑用户在现实中的话语权重)等。
3)公平共享方案:集群将剩下的空闲资源,按照一定规则(比如:均分)分配给其他所有用户,每个用户只使用一大份资源的一小份资源。
发明内容
本公开的实施例提出了用于输出信息的方法和装置。
第一方面,本公开的实施例提供了一种用于输出信息的方法,包括:获取待分配的资源的总量和至少一个客户端的客户端信息和资源占用信息;对于至少一个客户端中的客户端,根据资源的总量和该客户端的资源占用信息确定该客户端的当前权重,获取该客户端的历史权重,以及根据该客户端的历史权重和该客户端的当前权重确定该客户端的最终权重;按照最终权重由小到大的顺序输出客户端的客户端信息。
在一些实施例中,资源包括以下至少一种类型:磁盘、CPU、GPU、内存,资源占用信息包括客户端的至少一种类型的资源的占用量;以及根据资源的总量和该客户端的资源占用信息确定该客户端的当前权重,包括:对于至少一种类型的资源中的资源,将该客户端的该类型的资源的占用量与该类型的资源的总量的比值确定为该客户端的该类型的资源的占用户率;将该客户端的各类型的资源的占用户率的加权和确定为该客户端的当前权重。
在一些实施例中,根据该客户端的历史权重和该客户端的当前权重确定该客户端的最终权重,包括:将当前时间之前的预定时间段内的该客户端的历史权重和该客户端的当前权重的平均值确定为该客户端的最终权重。
在一些实施例中,根据该客户端的历史权重和该客户端的当前权重确定该客户端的最终权重,包括:将该客户端上一轮被调度时的历史权重和该客户端的当前权重的加权和确定为该客户端的最终权重。
在一些实施例中,该方法还包括:响应于接收到目标客户端的包括占用时长的优先分配请求,将目标客户端的占用时长内的最终权重设置为预定最小值。
在一些实施例中,该方法还包括:响应于接收到目标客户端的包括调度次数的优先分配请求,将目标客户端的调度次数内的最终权重设置为预定最小值。
在一些实施例中,该方法还包括:按照最终权重由小到大的顺序为至少一个客户端分配资源。
第二方面,本公开的实施例提供了一种用于输出信息的装置,包括:获取单元,被配置成获取待分配的资源的总量和至少一个客户端的客户端信息和资源占用信息;确定单元,被配置成对于至少一个客户端中的客户端,根据资源的总量和该客户端的资源占用信息确定该客户端的当前权重,获取该客户端的历史权重,以及根据该客户端的历史权重和该客户端的当前权重确定该客户端的最终权重;输出单元,被配置成按照最终权重由小到大的顺序输出客户端的客户端信息。
在一些实施例中,资源包括以下至少一种类型:磁盘、CPU、GPU、内存,资源占用信息包括客户端的至少一种类型的资源的占用量;以及确定单元进一步被配置成:对于至少一种类型的资源中的资源,将该客户端的该类型的资源的占用量与该类型的资源的总量的比值确定为该客户端的该类型的资源的占用户率;将该客户端的各类型的资源的占用户率的加权和确定为该客户端的当前权重。
在一些实施例中,确定单元进一步被配置成:将当前时间之前的预定时间段内的该客户端的历史权重和该客户端的当前权重的平均值确定为该客户端的最终权重。
在一些实施例中,确定单元进一步被配置成:将该客户端上一轮被调度时的历史权重和该客户端的当前权重的加权和确定为该客户端的最终权重。
在一些实施例中,该装置还包括第一置顶单元,被配置成:响应于接收到目标客户端的包括占用时长的优先分配请求,将目标客户端的占用时长内的最终权重设置为预定最小值。
在一些实施例中,该装置还包括第二置顶单元,被配置成:响应于接收到目标客户端的包括调度次数的优先分配请求,将目标客户端的调度次数内的最终权重设置为预定最小值。
在一些实施例中,该装置还包括分配单元,被配置成:按照最终权重由小到大的顺序为至少一个客户端分配资源。
第三方面,本公开的实施例提供了一种电子设备,包括:一个或多个处理器;存储装置,其上存储有一个或多个程序,当一个或多个程序被一个或多个处理器执行,使得一个或多个处理器实现如第一方面中任一的方法。
第四方面,本公开的实施例提供了一种计算机可读介质,其上存储有计算机程序,其中,程序被处理器执行时实现如第一方面中任一的方法。
本公开的实施例提供的用于输出信息的方法和装置,通过客户端的资源占用信息确定客户端的权重,然后再按权重由小到大的顺序选择客户端来分配资源。具有很好的解释性和预测性,能大大减少常规资源分配方法带来的“饿死”情况发生,显著提升集群作业运行质量。
附图说明
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:
图1是本公开的一个实施例可以应用于其中的示例性***架构图;
图2是根据本公开的用于输出信息的方法的一个实施例的流程图;
图3是根据本公开的用于输出信息的方法的一个应用场景的示意图;
图4是根据本公开的用于输出信息的方法的又一个实施例的流程图;
图5是根据本公开的用于输出信息的装置的一个实施例的结构示意图;
图6是适于用来实现本公开的实施例的电子设备的计算机***的结构示意图。
具体实施方式
下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关发明,而非对该发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与有关发明相关的部分。
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。
图1示出了可以应用本公开的用于输出信息的方法或用于输出信息的装置的实施例的示例性***架构100。
如图1所示,***架构100可以包括客户端101、资源管理器102、调度器103,节点104。网络用以在客户端101、资源管理器102、调度器103之间提供通信链路的介质。网络可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
用户可以使用客户端101通过网络与资源管理器102和交互调度器103,以接收或发送消息等。客户端101上可以安装有各种通讯客户端应用,例如网页浏览器应用、购物类应用、搜索类应用、即时通信工具、邮箱客户端、社交平台软件等。
客户端101可以是多租户技术中的租户的终端设备。租户(tenant)是指使用***或电脑运算资源的客户,但在多租户技术中,租户包含在***中可识别为指定用户的一切数据,包括帐户与统计信息(accounting data)、用户在***中建置的各式数据、以及用户本身的定制化应用程序环境等,都属于租户的范围。
资源管理器102负责接收客户端提交的作业请求,进行全局资源管理和分配。资源管理器102将待分配资源的客户端的客户端信息和资源占用信息以及分布式***中所有节点的资源总量信息发送给调度器103。调度器根据资源的总量和各客户端对资源的占用情况为客户端排序,按照客户端的排序结果依次将客户端调度到***中各节点中执行。
资源管理器102、调度器103可以位于同一服务器上,也可位于不同的服务器。
节点104可以是普通的物理PC机或虚拟机。
需要说明的是,本公开的实施例所提供的用于输出信息的方法一般由调度器103执行,相应地,用于输出信息的装置一般设置于调度器103中。
应该理解,图1中的客户端、资源管理器、调度器、节点的数目仅仅是示意性的。根据实现需要,可以具有任意数目的客户端、资源管理器、调度器、节点。
继续参考图2,示出了根据本公开的用于输出信息的方法的一个实施例的流程200。该用于输出信息的方法,包括以下步骤:
步骤201,获取待分配的资源的总量和至少一个客户端的客户端信息和资源占用信息。
在本实施例中,用于输出信息的方法的执行主体(例如图1所示的调度器)可以通过有线连接方式或者无线连接方式从资源管理器获取待分配的资源的总量和至少一个客户端的客户端信息和资源占用信息。资源可包括以下至少一种类型:磁盘、CPU、GPU、内存。可获得各种类型的资源的总量的信息,而不用关心这些资源具***于哪些节点上。资源占用信息也是分类型上报的,例如客户端1占用20G硬盘,512M内存,占用CPU10ms。客户端信息可包括客户端标识,位置等信息。该获取过程是周期执行的,例如每2秒就获取一次资源相关信息和客户端的相关信息进行调度。
步骤202,对于至少一个客户端中的客户端,根据资源的总量和该客户端的资源占用信息确定该客户端的当前权重,获取该客户端的历史权重,以及根据该客户端的历史权重和该客户端的当前权重确定该客户端的最终权重。
在本实施例中,根据本轮调度中获得的资源占用信息确定当前权重。将之前调度时使用的当前权重确定为历史权重。本申请的调度算法的理念主要在于实时计算每个用户的权重,而不是静态的配置。权重的定义引入了各个用户资源使用的历史情况因素,从这个维度上我们定义的公平性是指:用户在一段时间内资源的满足度,满足度越高的用户优先级越低,越少得到满足的用户优先级越高。可通过客户端的资源占用信息计算客户端的资源占用率,将资源占用率作为当前权重。
在本实施例的一些可选的实现方式中,主要考量的是用户的CPU使用情况,内存使用情况,磁盘的使用情况,GPU的使用情况等。对于不同的资源类型,都有其对应的权重,以适用于不同作业类型的集群。比如,对于那些集群作业都是IO密集型的,磁盘使用情况因素的权重一般会高一点。因此获取用户当前资源权重的公式为:
其中,Weightcurrent表示当前权重,字母i表示的资源的类型,usedi/totali/weighti分别表示用户在该资源类型上的资源使用量/该类型资源的总量/该资源类型的权重。n为资源类型的总量。
本申请设计了两套权重的更新算法,他们都能描述用户在近一段时间内的权重。一种是基于时间窗口的更新算法,另外一种是基于学习因子的更新算法。
基于时间窗口的更新算法,主要将近一段时间拆分成若N个时间片(若干个调度轮次)。我们考量近一段时间内的权重是指,前面N-1个时间片的权重之和以及当前这个时间片的权重值。每次更新的时候,只对当前时间窗口的权重进行更新,当这个时间片结束之后,对下一个时间片循环依次更新。更新公式为:
其中,Weightcurrent为公式1计算出的当前权重,Count指的是时间片的数量N-1。Weightold指的是前面N-1个时间片计算出的历史权重的平均值,即历史权重。Weightfinal为最终权重。本轮调度采用的最终权重将作为后面调度时的历史权重。
公式2的目的是将当前时间之前的预定时间段内的该客户端的历史权重和该客户端的当前权重的平均值确定为该客户端的最终权重。
可选地,还可直接将前面N-1个时间片计算出的当前权重与第N个时间片计算出的历史权重计算出权重平均值作为最终端权重。
基于学习因子的更新算法:主要是引入学习速率的概念,可以快速忽略距当前太久远的因素,又可以最大可能保留近期使用情况的影响。公式为:
Weightfinal=Weightold*α+(1-α)*Weightcurrent(公式3)
其中,α是一个在(0,1)之间的数,例如0.75,因此在每轮调度的时候,前几轮的权重因为学习因子的问题,会被缩小。Weightcurrent为公式1计算出的当前权重。Weightold指的是上一轮调度的历史权重,即历史权重。Weightfinal为最终权重。
公式3的目的是将该客户端上一轮被调度时的历史权重和该客户端的当前权重的加权和确定为该客户端的最终权重。
步骤203,按照最终权重由小到大的顺序输出客户端的客户端信息。
在本实施例中,按照最终权重由小到大的顺序对客户端进行排序,最终权重越小则优先级越高,满足度越低,越需要优先调度以保证公平性。客户端信息中还可包括请求分配的资源的数量。调度器可将排序结果输出给资源管理器,再由资源管理器决定为客户端分配哪些节点上的资源。在资源分配后再更新资源占用信息。
继续参见图3,图3是根据本实施例的用于输出信息的方法的应用场景的一个示意图。在图3的应用场景中,客户端301、302、303分别请求分配60G硬盘资源。资源管理器304将客户端301、302、303的资源占用信息和资源总量信息(总量60G,客户端1使用0G,客户端已使用20G,客户端3已使用30G)发给调度器305。调度器305根据资源的总量和各客户端的资源占用信息确定各客户端的当前权重,并根据各客户端的历史权重得到最终权重。然后按照最终权重由小到大的顺序输出“资源分配顺序为:客户端1、客户端2、客户端3”。
本公开的上述实施例提供的方法通过根据不同客户端的资源的使用情况确定客户端的权重,使得满足度越高的客户端优先级越低,越少得到满足的客户端优先级越高。从而保持各客户端在一段时间内资源的满足度的公平性。
进一步参考图4,其示出了用于输出信息的方法的又一个实施例的流程400。该用于输出信息的方法的流程400,包括以下步骤:
步骤401,获取待分配的资源的总量和至少一个客户端的客户端信息和资源占用信息。
步骤401与步骤201基本相同,因此不再赘述。
步骤402,对于至少一个客户端中的客户端,根据资源的总量和该客户端的资源占用信息确定该客户端的当前权重,获取该客户端的历史权重,以及根据该客户端的历史权重和该客户端的当前权重确定该客户端的最终权重。
步骤402与步骤202基本相同,因此不再赘述。
步骤403,响应于接收到目标客户端的优先分配请求,将目标客户端的最终权重设置为预定最小值。
在本实施例中,针对紧急用户(目标客户端)引入一个叫做“置顶”状态,处于该状态的用户会被集群优先分配资源。对于时间窗口的算法,我们对于置顶的时间单元定义为一个时间片的大小,目标客户端发送的优先分配请求中包括了占用时长,则调度器可将该占用时长内的目标客户端的最终权重设置为预定最小值(例如0)。例如,紧急用户请求10s内优先调度,则在10s内该紧急用户的最终权重被设置为0,并在10s后重新根据已占用资源信息更新当前权重,再重新计算出最终权重。而对于基于学习因子的算法,我们定义时间单元为一个调度轮次,目标客户端发送的优先分配请求中包括了调度次数,则调度器可将该调度次数内的目标客户端的最终权重设置为预定最小值(例如0)。例如,紧急用户请求10次优先调度,则在连续10次调度中将该紧急用户的最终权重被设置为0,并在连续10次调度后重新根据已占用资源信息更新当前权重,再重新计算出最终权重。每个用户的置顶状态都包含一个时间期限(若干个时间单元),当用户处于置顶状态时,权重为0(最低),因而最优先调度。当置顶状态触发超时,用户自动解除该状态,无须再次进行人工干预。
步骤404,按照最终权重由小到大的顺序为至少一个客户端分配资源。
在本实施例中,根据最终权重的排序结果依次为客户端分配资源。优先满足排在前面的客户端。例如客户端1、客户端2、客户端3同时请求60G内存的时候,如果集群将这部分资源均分,每个用户分20G内存,那么三个用户的作业都有可能发生因为OOM(Out-of-Memory,内存耗尽)而失败,不仅影响服务质量还会造成一定的资源浪费。而采用本申请的方法,可排出优先级,如果客户端1的最终权重最小,则优先将60G内存分配给客户端1。在本轮调度中未给客户端2、客户端3分配资源。但之后客户端2、客户端3由于占用资源少,权重变低,则提高了优先级。
从图4中可以看出,与图2对应的实施例相比,本实施例中的用于输出信息的方法的流程400体现了对紧急用户优先借用资源的处理。由此,本实施例描述的方案可以控制借给紧急用户多长时间的资源。时间结束之后,而不干扰***的正常运转。
进一步参考图5,作为对上述各图所示方法的实现,本公开提供了一种用于输出信息的装置的一个实施例,该装置实施例与图2所示的方法实施例相对应,该装置具体可以应用于各种电子设备中。
如图5所示,本实施例的用于输出信息的装置500包括:获取单元501、确定单元502和输出单元503。其中,获取单元501,被配置成获取待分配的资源的总量和至少一个客户端的客户端信息和资源占用信息;确定单元502,被配置成对于至少一个客户端中的客户端,根据资源的总量和该客户端的资源占用信息确定该客户端的当前权重,获取该客户端的历史权重,以及根据该客户端的历史权重和该客户端的当前权重确定该客户端的最终权重;输出单元503,被配置成按照最终权重由小到大的顺序输出客户端的客户端信息。
在本实施例中,用于输出信息的装置500的获取单元501、确定单元502和输出单元503的具体处理可以参考图2对应实施例中的步骤201、步骤202、步骤203。
在本实施例的一些可选的实现方式中,资源包括以下至少一种类型:磁盘、CPU、GPU、内存,资源占用信息包括客户端的至少一种类型的资源的占用量;以及确定单元502进一步被配置成:对于至少一种类型的资源中的资源,将该客户端的该类型的资源的占用量与该类型的资源的总量的比值确定为该客户端的该类型的资源的占用户率;将该客户端的各类型的资源的占用户率的加权和确定为该客户端的当前权重。
在本实施例的一些可选的实现方式中,确定单元502进一步被配置成:将当前时间之前的预定时间段内的该客户端的历史权重和该客户端的当前权重的平均值确定为该客户端的最终权重。
在本实施例的一些可选的实现方式中,确定单元502进一步被配置成:将该客户端上一轮被调度时的历史权重和该客户端的当前权重的加权和确定为该客户端的最终权重。
在本实施例的一些可选的实现方式中,装置500还包括第一置顶单元(附图中未示出),被配置成:响应于接收到目标客户端的包括占用时长的优先分配请求,将目标客户端的占用时长内的最终权重设置为预定最小值。
在本实施例的一些可选的实现方式中,装置500还包括第二置顶单元(附图中未示出),被配置成:响应于接收到目标客户端的包括调度次数的优先分配请求,将目标客户端的调度次数内的最终权重设置为预定最小值。
在本实施例的一些可选的实现方式中,装置500还包括分配单元(附图中未示出),被配置成:按照最终权重由小到大的顺序为至少一个客户端分配资源。
下面参考图6,其示出了适于用来实现本公开的实施例的电子设备(例如图1中的调度器)600的结构示意图。图6示出的调度器仅仅是一个示例,不应对本公开的实施例的功能和使用范围带来任何限制。
如图6所示,电子设备600可以包括处理装置(例如中央处理器、图形处理器等)601,其可以根据存储在只读存储器(ROM)602中的程序或者从存储装置608加载到随机访问存储器(RAM)603中的程序而执行各种适当的动作和处理。在RAM 603中,还存储有电子设备600操作所需的各种程序和数据。处理装置601、ROM 602以及RAM603通过总线604彼此相连。输入/输出(I/O)接口605也连接至总线604。
通常,以下装置可以连接至I/O接口605:包括例如触摸屏、触摸板、键盘、鼠标、摄像头、麦克风、加速度计、陀螺仪等的输入装置606;包括例如液晶显示器(LCD)、扬声器、振动器等的输出装置607;包括例如磁带、硬盘等的存储装置608;以及通信装置609。通信装置609可以允许电子设备600与其他设备进行无线或有线通信以交换数据。虽然图6示出了具有各种装置的电子设备600,但是应理解的是,并不要求实施或具备所有示出的装置。可以替代地实施或具备更多或更少的装置。图6中示出的每个方框可以代表一个装置,也可以根据需要代表多个装置。
特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信装置609从网络上被下载和安装,或者从存储装置608被安装,或者从ROM 602被安装。在该计算机程序被处理装置601执行时,执行本公开的实施例的方法中限定的上述功能。需要说明的是,本公开的实施例所述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的***、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开的实施例中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行***、装置或者器件使用或者与其结合使用。而在本公开的实施例中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行***、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、RF(射频)等等,或者上述的任意合适的组合。
上述计算机可读介质可以是上述电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该电子设备执行时,使得该电子设备:获取待分配的资源的总量和至少一个客户端的客户端信息和资源占用信息;对于至少一个客户端中的客户端,根据资源的总量和该客户端的资源占用信息确定该客户端的当前权重,获取该客户端的历史权重,以及根据该客户端的历史权重和该客户端的当前权重确定该客户端的最终权重;按照最终权重由小到大的顺序输出客户端的客户端信息。
可以以一种或多种程序设计语言或其组合来编写用于执行本公开的实施例的操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
附图中的流程图和框图,图示了按照本公开各种实施例的***、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的***来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本公开的实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的单元也可以设置在处理器中,例如,可以描述为:一种处理器包括接收单元、解析单元、信息选取单元和生成单元。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定,例如,接收单元还可以被描述为“接收用户的网页浏览请求的单元”。
以上描述仅为本申请的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本申请中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离所述发明构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本申请中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。
Claims (16)
1.一种用于输出信息的方法,包括:
获取待分配的资源的总量和至少一个客户端的客户端信息和资源占用信息;
对于所述至少一个客户端中的客户端,根据所述资源的总量和该客户端的资源占用信息确定该客户端的当前权重,获取该客户端的历史权重,以及根据该客户端的历史权重和该客户端的当前权重确定该客户端的最终权重;
按照最终权重由小到大的顺序输出客户端的客户端信息。
2.根据权利要求1所述的方法,其中,所述资源包括以下至少一种类型:磁盘、CPU、GPU、内存,所述资源占用信息包括客户端的至少一种类型的资源的占用量;以及
所述根据所述资源的总量和该客户端的资源占用信息确定该客户端的当前权重,包括:
对于所述至少一种类型的资源中的资源,将该客户端的该类型的资源的占用量与该类型的资源的总量的比值确定为该客户端的该类型的资源的占用户率;
将该客户端的各类型的资源的占用户率的加权和确定为该客户端的当前权重。
3.根据权利要求1所述的方法,其中,所述根据该客户端的历史权重和该客户端的当前权重确定该客户端的最终权重,包括:
将当前时间之前的预定时间段内的该客户端的历史权重和该客户端的当前权重的平均值确定为该客户端的最终权重。
4.根据权利要求1所述的方法,其中,所述根据该客户端的历史权重和该客户端的当前权重确定该客户端的最终权重,包括:
将该客户端上一轮被调度时的历史权重和该客户端的当前权重的加权和确定为该客户端的最终权重。
5.根据权利要求3所述的方法,其中,所述方法还包括:
响应于接收到目标客户端的包括占用时长的优先分配请求,将所述目标客户端的所述占用时长内的最终权重设置为预定最小值。
6.根据权利要求4所述的方法,其中,所述方法还包括:
响应于接收到目标客户端的包括调度次数的优先分配请求,将所述目标客户端的所述调度次数内的最终权重设置为预定最小值。
7.根据权利要求1-6之一所述的方法,其中,所述方法还包括:
按照最终权重由小到大的顺序为所述至少一个客户端分配资源。
8.一种用于输出信息的装置,包括:
获取单元,被配置成获取待分配的资源的总量和至少一个客户端的客户端信息和资源占用信息;
确定单元,被配置成对于所述至少一个客户端中的客户端,根据所述资源的总量和该客户端的资源占用信息确定该客户端的当前权重,获取该客户端的历史权重,以及根据该客户端的历史权重和该客户端的当前权重确定该客户端的最终权重;
输出单元,被配置成按照最终权重由小到大的顺序输出客户端的客户端信息。
9.根据权利要求8所述的装置,其中,所述资源包括以下至少一种类型:磁盘、CPU、GPU、内存,所述资源占用信息包括客户端的至少一种类型的资源的占用量;以及
所述确定单元进一步被配置成:
对于所述至少一种类型的资源中的资源,将该客户端的该类型的资源的占用量与该类型的资源的总量的比值确定为该客户端的该类型的资源的占用户率;
将该客户端的各类型的资源的占用户率的加权和确定为该客户端的当前权重。
10.根据权利要求8所述的装置,其中,所述确定单元进一步被配置成:
将当前时间之前的预定时间段内的该客户端的历史权重和该客户端的当前权重的平均值确定为该客户端的最终权重。
11.根据权利要求8所述的装置,其中,所述确定单元进一步被配置成:
将该客户端上一轮被调度时的历史权重和该客户端的当前权重的加权和确定为该客户端的最终权重。
12.根据权利要求10所述的装置,其中,所述装置还包括第一置顶单元,被配置成:
响应于接收到目标客户端的包括占用时长的优先分配请求,将所述目标客户端的所述占用时长内的最终权重设置为预定最小值。
13.根据权利要求11所述的装置,其中,所述装置还包括第二置顶单元,被配置成:
响应于接收到目标客户端的包括调度次数的优先分配请求,将所述目标客户端的所述调度次数内的最终权重设置为预定最小值。
14.根据权利要求8-13之一所述的装置,其中,所述装置还包括分配单元,被配置成:
按照最终权重由小到大的顺序为所述至少一个客户端分配资源。
15.一种电子设备,包括:
一个或多个处理器;
存储装置,其上存储有一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-7中任一所述的方法。
16.一种计算机可读介质,其上存储有计算机程序,其中,所述程序被处理器执行时实现如权利要求1-7中任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910040979.8A CN109783236B (zh) | 2019-01-16 | 2019-01-16 | 用于输出信息的方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910040979.8A CN109783236B (zh) | 2019-01-16 | 2019-01-16 | 用于输出信息的方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109783236A true CN109783236A (zh) | 2019-05-21 |
CN109783236B CN109783236B (zh) | 2021-08-24 |
Family
ID=66500735
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910040979.8A Active CN109783236B (zh) | 2019-01-16 | 2019-01-16 | 用于输出信息的方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109783236B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111552569A (zh) * | 2020-04-28 | 2020-08-18 | 咪咕文化科技有限公司 | ***资源调度方法、装置及存储介质 |
CN112149863A (zh) * | 2019-06-28 | 2020-12-29 | 傲基科技股份有限公司 | 确定资源消耗量的方法、设备和计算机存储介质 |
CN113765949A (zh) * | 2020-06-02 | 2021-12-07 | 华为技术有限公司 | 资源分配的方法以及装置 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103577267A (zh) * | 2012-08-03 | 2014-02-12 | 上海博泰悦臻电子设备制造有限公司 | 车载设备的资源分配方法及装置 |
CN104168318A (zh) * | 2014-08-18 | 2014-11-26 | 中国联合网络通信集团有限公司 | 一种资源服务***及其资源分配方法 |
CN104270459A (zh) * | 2014-10-20 | 2015-01-07 | 山东省计算中心(国家超级计算济南中心) | 一种增强公平性的云计算用户资源配额分配方法 |
CN105335229A (zh) * | 2014-07-25 | 2016-02-17 | 杭州华三通信技术有限公司 | 一种业务资源的调度方法和装置 |
CN107133096A (zh) * | 2017-04-13 | 2017-09-05 | 新华三技术有限公司 | 一种资源分配方法及装置 |
CN108429704A (zh) * | 2017-02-14 | 2018-08-21 | ***通信集团吉林有限公司 | 一种节点资源分配方法及装置 |
CN108629611A (zh) * | 2017-03-24 | 2018-10-09 | 北京京东尚科信息技术有限公司 | 用于分配资源的方法和装置 |
-
2019
- 2019-01-16 CN CN201910040979.8A patent/CN109783236B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103577267A (zh) * | 2012-08-03 | 2014-02-12 | 上海博泰悦臻电子设备制造有限公司 | 车载设备的资源分配方法及装置 |
CN105335229A (zh) * | 2014-07-25 | 2016-02-17 | 杭州华三通信技术有限公司 | 一种业务资源的调度方法和装置 |
CN104168318A (zh) * | 2014-08-18 | 2014-11-26 | 中国联合网络通信集团有限公司 | 一种资源服务***及其资源分配方法 |
CN104270459A (zh) * | 2014-10-20 | 2015-01-07 | 山东省计算中心(国家超级计算济南中心) | 一种增强公平性的云计算用户资源配额分配方法 |
CN108429704A (zh) * | 2017-02-14 | 2018-08-21 | ***通信集团吉林有限公司 | 一种节点资源分配方法及装置 |
CN108629611A (zh) * | 2017-03-24 | 2018-10-09 | 北京京东尚科信息技术有限公司 | 用于分配资源的方法和装置 |
CN107133096A (zh) * | 2017-04-13 | 2017-09-05 | 新华三技术有限公司 | 一种资源分配方法及装置 |
Non-Patent Citations (1)
Title |
---|
蹇云: "《操作***原理基础教程》", 31 August 2018 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112149863A (zh) * | 2019-06-28 | 2020-12-29 | 傲基科技股份有限公司 | 确定资源消耗量的方法、设备和计算机存储介质 |
CN111552569A (zh) * | 2020-04-28 | 2020-08-18 | 咪咕文化科技有限公司 | ***资源调度方法、装置及存储介质 |
CN111552569B (zh) * | 2020-04-28 | 2023-10-20 | 咪咕文化科技有限公司 | ***资源调度方法、装置及存储介质 |
CN113765949A (zh) * | 2020-06-02 | 2021-12-07 | 华为技术有限公司 | 资源分配的方法以及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN109783236B (zh) | 2021-08-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111966500B (zh) | 资源调度方法、装置、电子设备及存储介质 | |
CN112363813A (zh) | 资源调度方法、装置、电子设备和计算机可读介质 | |
CN109034396A (zh) | 用于处理分布式集群中的深度学习作业的方法和装置 | |
CN108304250A (zh) | 用于确定运行机器学习任务的节点的方法和装置 | |
CN110389816B (zh) | 用于资源调度的方法、装置以及计算机可读介质 | |
CN109857535B (zh) | 面向Spark JDBC的任务优先级控制的实现方法及装置 | |
CN108762687B (zh) | Io服务质量控制方法、装置、设备及存储介质 | |
CN109861850B (zh) | 一种基于sla的无状态云工作流负载均衡调度的方法 | |
CN109408205A (zh) | 基于hadoop集群的任务调度方法和装置 | |
CN109783236A (zh) | 用于输出信息的方法和装置 | |
CN114610474B (zh) | 一种异构超算环境下多策略的作业调度方法及*** | |
CN111464659A (zh) | 节点的调度、节点的预选处理方法、装置、设备及介质 | |
CN109879126B (zh) | 一种电梯预约的方法和*** | |
CN110795233B (zh) | 分布式资源配给方法、装置和电子设备 | |
CN105491150A (zh) | 基于时间序列的负载均衡处理方法及*** | |
CN107317836A (zh) | 一种混合云环境下时间可感知的请求调度方法 | |
CN106845746A (zh) | 一种支持大规模实例密集型应用的云工作流管理*** | |
CN114205317B (zh) | 基于sdn与nfv的服务功能链sfc资源分配方法及电子设备 | |
CN114721818A (zh) | 一种基于Kubernetes集群的GPU分时共享方法和*** | |
CN114327894A (zh) | 资源分配方法、装置、电子设备及存储介质 | |
CN113204425A (zh) | 供进程管理内部线程的方法、装置、电子设备及存储介质 | |
CN109684059A (zh) | 用于监控数据的方法及装置 | |
CN112156453B (zh) | 实例自适应调整方法、装置、计算机可读存储介质及设备 | |
CN109981396A (zh) | docker服务容器集群的监控方法及装置、介质及电子设备 | |
CN111694670B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |