一种多租户资源共享的方法及装置与流程

文档序号:11544974阅读:356来源:国知局
一种多租户资源共享的方法及装置与流程

本发明涉及计算机技术领域,特别涉及一种多租户资源共享的方法及装置。



背景技术:

在云计算时代,大量的计算资源集中到一起,统一为用户提供服务,用户从云上租用计算资源,既可以享受低成本的好处,又可以得到安全性、可靠性的保证,其中,用户又称为租户,一个租户通常对应一个组织,例如公司、学校等。

在现有技术中计算资源是以cpu(centralprocessingunit,中央处理器)核为单位划分的,所有租户通过竞争机制来获取cpu核,这样容易导致不同的租户竞争到的cpu核差异较大,有可能竞争到cpu核较多的租户仅需较少的cpu核即能满足该租户的需求,而竞争到cpu核较少的租户需要较多的cpu核才能满足该租户的需求,造成cpu核资源分配不合理,此外,租户的竞争cpu核的能力随着时间的不同,可能会发生变化,例如该时刻该租户的网络环境较好,竞争到较多的cpu核,下一时刻网络环境变差,用于服务该租户的cpu核就有可能为其他租户服务,导致cpu核切换次数增多,处理租户需求的效率低。



技术实现要素:

本发明提供一种多租户共享资源的方法及装置,用以解决现有技术中存在的cpu核分配不合理以及由于租户通过竞争机制来获取cpu核,导致的cpu核切换次数增多,处理租户需求效率低的问题。

第一方面,提供了一种多租户共享资源的方法,包括:

中央处理器cpu管理分配器预估租户的cpu核的平均使用率;若确定所述 租户的cpu核的平均使用率小于针对所述租户预先设置的cpu核的期望使用率,则将所述租户所租用的各个cpu核中的至少一个cpu核对应的cpu核信息添加到所述存储空间中预设的cpu核链表中,所述cpu核链表中存储的cpu核信息对应的cpu核用于重新分配;若确定所述租户的cpu核的平均使用率大于所述预先设置的cpu核的期望使用率,则为所述租户分配所述cpu核链表中的至少一个cpu核信息分别对应的cpu核,其中,所述cpu核的平均使用率为所述租户在设定时长内所租用的各个cpu核的使用率的平均值,所述租户为所述cpu管理分配器管理的存储空间中已存储的任意租户。

由于cpu管理分配器能够预估设定时长内租户的cpu核的平均使用率,且在当该租户的cpu核的平均使用率小于针对该租户预先设置的cpu核的期望使用率时,将该租户所租用的cpu核中至少一个cpu核对应的cpu核信息添加到cpu核链表中,用于重新分配,当确定租户需要租用cpu核时,则从cpu核链表中选择至少一个已存储的cpu核信息分别对应的cpu核分配给该租户,从而通过对租户在设定时长内cpu核的平均使用率的预估,使得cpu管理分配器管理能够根据预估的租户的平均使用率,动态地分配存储空间中已存储的租户所租用的cpu核,从而避免了现有技术中因竞争导致的cpu核分配的不合理的问题,同时减少了cpu核的切换次数,从而提高了处理租户需求的效率。

在第一方面的基础上,可选的,所述方法还包括:所述cpu管理分配器在所述存储空间中增加的新租户时,则为所述新租户分配所述cpu核链表中的至少一个cpu核信息分别对应的cpu核。

由于当在存储空间中增加新的租户时,能够为该新组户分配cpu核链表中的至少一个cpu核信息分别对应的cpu核,避免了新用户通过竞争机制,竞争cpu核,从而避免了现有技术中因竞争导致的cpu核分配的不合理的问题,同时减少了cpu核的切换次数,从而提高了处理租户需求的效率。

在第一方面的基础上,可选的,所述cpu核链表包括空闲链表和候选链表;当所述租户的cpu核的平均使用率小于针对所述租户预先设置的cpu核的最小 使用率时,所述cpu管理分配器将所述租户所租用的各个cpu核中的至少一个cpu核对应的cpu核信息添加到所述空闲链表中;当所述租户的cpu核的平均使用率大于针对所述租户预先设置的cpu核的最小使用率、且小于针对所述租户预先设置的cpu核的期望使用率时,所述cpu管理分配器将所述租户所租用的各个cpu核中的至少一个cpu核对应的cpu核信息,以及所述租户租用cpu核的租用优先级信息映射添加到所述候选链表中;其中,所述租户的cpu核的期望使用率大于所述租户的cpu核的最小使用率。

由于当预估的租户的cpu核的平均使用率小于针对该租户预先设置的cpu核的最小使用率时,该租户可以减少租用cpu核的个数,因此将减少租用的cpu核的核信息添加的空闲链表中,而当预估的租户的cpu核的平均使用率大于针对该租户预先设置的cpu核的最小使用率、小于针对该租户预先设置的cpu核的期望使用率时,说明该租户对租用的cpu核有需求,能够在其他租户对cpu核有需求、且没有空闲的cpu核可以租用时,可以将该租户的cpu核作为一种候选方案,通过细化cpu核链表,进一步使得对租户所租用的cpu核的分配更加合理。

在第一方面的基础上,可选的,所述cpu管理分配器若确定所述租户的cpu核的平均使用率大于针对所述租户预先设置的cpu核的最大使用率、且所述空闲链表为空,则按照所述候选链表中存储的租用优先级信息从低到高的顺序选择出的至少一个租用优先级信息分别对应的cpu核信息,将选择出的cpu核信息对应的cpu核分配给所述租户;若确定所述租户的cpu核的平均使用率大于针对所述租户预先设置的cpu核的期望使用率、且所述空闲链表不为空,则将所述空闲链表中存储的至少一个cpu核信息对应的cpu核分配给所述租户;其中,所述租户的cpu核的期望使用率小于所述租户的cpu核的最大使用率。

由于cpu管理分配器通过针对该租户的cpu核的期望使用率和针对该租户的最大使用率,对分配cpu核的方案进行进一步的细化,使得对租户所租用的cpu核的分配更加合理,并且优先将租户优先级低的cpu核提供给需要cpu 核租户,从而保证了高优先级组户的使用。

在第一方面的基础上,可选的,所述cpu管理分配器若确定所述租户的cpu核的平均使用率大于针对所述租户预先设置的cpu核的期望使用率、且小于针对所述租户预先设置的cpu核的最大使用率、且所述空闲链表为空,则不再为所述租户分配cpu核。

由于该方案对分配cpu核的方案进行了进一步的细化,使得对租户所租用的cpu核的分配更加合理。

在第一方面的基础上,可选的,所述cpu管理分配器若确定需要为至少两个租户分配cpu核,则按照至少两个租户中每个租户租用cpu核的租用优先级信息从高到低的顺序,分别为所述每个租户分配cpu核。

由于cpu管理分配器在确定至少需要为两个租户分配cpu核时,优先为优先级高的租户分配cpu核,因此保证了优先级高的租户对于cpu核的需求。

第二方面,提供了一种多租户共享资源的装置,包括:计算模块、判断模块;其中,计算模块用于预估租户的cpu核的平均使用率,所述cpu核的平均使用率为所述租户在设定时长内所租用的各个cpu核的使用率的平均值,所述租户为所述cpu管理分配器管理的存储空间中已存储的任意租户;判断模块用于在确定所述租户的cpu核的平均使用率小于针对所述租户预先设置的cpu核的期望使用率时,则将所述租户所租用的各个cpu核中的至少一个cpu核对应的cpu核信息添加到所述存储空间中预设的cpu核链表中,所述cpu核链表中存储的cpu核信息对应的cpu核用于重新分配;在确定所述租户的cpu核的平均使用率大于所述预先设置的cpu核的期望使用率时,则为所述租户分配所述cpu核链表中的至少一个cpu核信息分别对应的cpu核。

由于计算模块能够预估设定时长内租户的cpu核的平均使用率,且判断模块在当该租户的cpu核的平均使用率小于针对该租户预先设置的cpu核的期望使用率时,将该租户所租用的cpu核中至少一个cpu核对应的cpu核信息添加到cpu核链表中,用于重新分配,当确定租户需要租用cpu核时,则从cpu 核链表中选择至少一个已存储的cpu核信息分别对应的cpu核分配给该租户,从而通过对租户在设定时长内cpu核的平均使用率的预估,使得该装置能够根据预估的租户的平均使用率,动态地分配存储空间中已存储的租户所租用的cpu核,从而避免了现有技术中因竞争导致的cpu核分配的不合理的问题,同时减少了cpu核的切换次数,从而提高了处理租户需求的效率。

在第二方面的基础上,可选的,该装置还包括:处理模块;所述处理模块用于在所述存储空间中增加的新租户时,则为所述新租户分配所述cpu核链表中的至少一个cpu核信息分别对应的cpu核。

由于当在存储空间中增加新的租户时,能够为该新组户分配cpu核链表中的至少一个cpu核信息分别对应的cpu核,避免了新用户通过竞争机制,竞争cpu核,从而避免了现有技术中因竞争导致的cpu核分配的不合理的问题,同时减少了cpu核的切换次数,从而提高了处理租户需求的效率。

在第二方面的基础上,可选的,所述cpu核链表包括空闲链表和候选链表;所述判断模块,具体用于当所述租户的cpu核的平均使用率小于针对所述租户预先设置的cpu核的最小使用率时,将所述租户所租用的各个cpu核中的至少一个cpu核对应的cpu核信息添加到所述空闲链表中;当所述租户的cpu核的平均使用率大于针对所述租户预先设置的cpu核的最小使用率、且小于针对所述租户预先设置的cpu核的期望使用率时,将所述租户所租用的各个cpu核中的至少一个cpu核对应的cpu核信息,以及所述租户租用cpu核的租用优先级信息映射添加到所述候选链表中;其中,所述租户的cpu核的期望使用率大于所述租户的cpu核的最小使用率。

由于当预估的租户的cpu核的平均使用率小于针对该租户预先设置的cpu核的最小使用率时,该租户可以减少租用cpu核的个数,因此将减少租用的cpu核的核信息添加的空闲链表中,而当预估的租户的cpu核的平均使用率大于针对该租户预先设置的cpu核的最小使用率、小于针对该租户预先设置的cpu核的期望使用率时,说明该租户对租用的cpu核有需求,能够在其他租户对cpu 核有需求、且没有空闲的cpu核可以租用时,可以将该租户的cpu核作为一种候选方案,通过细化cpu核链表,进一步使得对租户所租用的cpu核的分配更加合理。

在第二方面的基础上,可选的,所述判断模块,具体用于若确定所述租户的cpu核的平均使用率大于针对所述租户预先设置的cpu核的最大使用率、且所述空闲链表为空,则按照所述候选链表中存储的租用优先级信息从低到高的顺序选择出的至少一个租用优先级信息分别对应的cpu核信息,将选择出的cpu核信息对应的cpu核分配给所述租户;若确定所述租户的cpu核的平均使用率大于针对所述租户预先设置的cpu核的期望使用率、且所述空闲链表不为空,则将所述空闲链表中存储的至少一个cpu核信息对应的cpu核分配给所述租户;其中,所述租户的cpu核的期望使用率小于所述租户的cpu核的最大使用率。

由于通过针对该租户的cpu核的期望使用率和针对该租户的最大使用率,对分配cpu核的方案进行进一步的细化,使得对租户所租用的cpu核的分配更加合理,并且优先将租户优先级低的cpu核提供给需要cpu核租户,从而保证了高优先级组户的使用。

在第二方面的基础上,可选的,所述判断模块,还用于若确定所述租户的cpu核的平均使用率大于针对所述租户预先设置的cpu核的期望使用率、且小于针对所述租户预先设置的cpu核的最大使用率、且所述空闲链表为空,则不再为所述租户分配cpu核。

由于该方案对分配cpu核的方案进行了进一步的细化,使得对租户所租用的cpu核的分配更加合理。

在第二方面的基础上,可选的,所述判断模块,还用于若确定需要为至少两个租户分配cpu核,则按照至少两个租户中每个租户租用cpu核的租用优先级信息从高到低的顺序,分别为所述每个租户分配cpu核。

由于cpu管理分配器在确定至少需要为两个租户分配cpu核时,优先为优 先级高的租户分配cpu核,因此保证了优先级高的租户对于cpu核的需求。

附图说明

图1a为本发明实施例多租户共享资源的系统架构示意图;

图1b为本发明实施例服务器结构示意图;

图2为本发明实施例多租户共享资源的方法流程示意图;

图3为本发明实施例多租户共享资源的方法流程示意图;

图4为本发明实施例多租户共享资源的装置的示意图;

图5为本发明实施例多租户共享资源的装置的硬件结构示意图。

具体实施方式

为了使本发明的目的、技术方案和优点更加清楚,下面结合说明书附图对本发明实施例作进一步详细描述。

为使得每个租户能够从云端租用到cpu核来满足该租户的需求,解决现有技术中存在的cpu核分配不合理以及cpu核切换次数较多的问题,本发明实施例提供了一种多租户共享资源的方法。

图1a为本发明实施例多租户共享资源的系统架构示意图,该系统架构包括:服务器、和多个终端设备,其中服务器如图1b所示,包括cpu管理分配器和多个cpu核,其中,租户通过终端设备中的app(应用,application)向服务器发送请求,服务器通过cpu管理分配器为租户分配cpu核,执行租户的请求,cpu管理分配器通过cpu管理分配器所管理的存储空间记录租户的相关信息,该信息包括但不限于租户自身的信息,如优先级、名称等,租户使用cpu核的使用记录等。

采用本发明实施例提供的技术方案,由于cpu管理分配器能够根据预估的租户cpu核的平均使用率,动态地为cpu管理分配器所管理的存储空间中已存储的租户分配cpu核,从而避免了现有技术中因竞争导致的cpu核分配的不合 理的问题,同时减少了cpu核的切换次数,从而提高了处理租户需求的效率。

下面对本发明实施例提供的技术方案进行详细说明。

如图2所示,本发明实施例多租户共享资源的方法,包括:

步骤200,cpu管理分配器预估租户的cpu核的平均使用率,cpu核的平均使用率为租户在设定时长内所租用的各个cpu核的使用率的平均值,租户为cpu管理分配器管理的存储空间中已存储的任意租户;

步骤201,cpu管理分配器若确定租户的cpu核的平均使用率小于针对租户预先设置的cpu核的期望使用率,则将租户所租用的各个cpu核中的至少一个cpu核对应的cpu核信息添加到存储空间中预设的cpu核链表中,cpu核链表中存储的cpu核信息对应的cpu核用于重新分配;

步骤202,cpu管理分配器若确定租户的cpu核的平均使用率大于预先设置的cpu核的期望使用率,则为租户分配cpu核链表中的至少一个cpu核信息分别对应的cpu核。

需要说明的是,在步骤200中,设定时长为cpu管理分配器预估第一租户的cpu核的平均使用率之后的一段时间,即cpu管理分配器估计的租户的cpu核的平均使用率为未来一段时间的该租户的cpu核的平均使用率。

具体的,cpu管理分配器通过统计该租户cpu核运行数据,来预测或估计该租户在设定时长内的cpu核的平均使用率。

可选的,cpu管理分配器周期性估计第一租户的cpu核的平均使用率,具体的,cpu管理分配器在每周期开始时,估计该周期中第一租户的cpu核的平均使用率。

在步骤201中,当cpu管理分配器确定该租户的cpu核的平均使用率小于针对第一租户预先设置的cpu核的期望使用率时,根据预设的算法,确定第一租户租用的cpu核中能够用于重新分配的cpu核的个数,并将相应个数的cpu核信息添加到cpu核链表中。

若cpu核链表包括空闲链表和候选链表,可选的,当该租户的cpu核的平 均使用率小于针对该租户预先设置的cpu核的最小使用率时,cpu管理分配器将该租户所租用的各个cpu核中的至少一个cpu核对应的cpu核信息添加到空闲链表中;当该租户的cpu核的平均使用率大于针对该租户预先设置的cpu核的最小使用率、且小于针对该租户预先设置的cpu核的期望使用率时,cpu管理分配器将该租户所租用的各个cpu核中的至少一个cpu核对应的cpu核信息,以及该租户租用cpu核的租用优先级信息映射添加到候选链表中;其中,该租户的cpu核的期望使用率大于该租户的cpu核的最小使用率。

以租户1为例,针对租户1预先设置的cpu核的期望使用率为70%,针对租户1预先设置的cpu核的最小使用率为50%:

情景一:若cpu管理分配器预估的租户1的cpu核的平均使用率为40%,由于cpu核的平均使用率小于针对租户1预先设置的cpu核的最小使用率,则根据预先设置的算法,确定释放的cpu核的个数为1,并将相应个数的cpu核的核信息添加到空闲链表中,具体的,确定释放的cpu核的个数为1的步骤可以如下:

租户1在设定时长中需要租用的cpu核的个数为n=40%/50%*n,当n=4时,n=3.2,向下取整,则在设定时长中需要租用cpu核的个数为4,其中,n为针对租户1预先设置的cpu核的期望个数,若当前租户1租用的cpu核的个数为5,则能够释放的cpu核的个数为1。

其中,空闲链表中保存的cpu核信息对应的cpu核,指的是租户不再使用该cpu核,该cpu核处于空闲状态。

需要说明的是,确定释放的cpu核的个数的算法不限于上述算法,其他能够用于确定释放的cpu核的个数的算法均可。

情景二:若cpu管理分配器估计的租户的cpu核的平均使用率为60%,由于cpu核的平均使用率大于最小使用率、且小于期望使用率,则根据预先设置的算法,确定能够用于重新分配的cpu核的个数,并将相应个数的cpu核的核信息、以及租户租用cpu核的优先级信息映射添加到候选链表中。

其中,候选链表中存储的cpu核信息对应的cpu核为租户当前还在使用的cpu核,当有需要申请cpu核的租户时,可将该cpu核分配给需要申请cpu核的租户。

步骤202中,当确定租户的cpu核的平均使用率大于针对租户预先设置的cpu核的期望使用率时,进一步,根据预设的算法,确定该租户需要申请租用cpu核的个数。

具体的,当租户的cpu核的平均使用率大于针对该租户预先设置的cpu核的期望使用率、且小于针对该租户预先设置的cpu核的最大使用率,且空闲链表不为空时,则为该租户分配的确定个数的cpu核为空闲链表中存储的至少一个cpu核信息分别对应的cpu核,其中,针对租户预先设置的cpu核的最大使用率大于针对租户预先设置的cpu核的期望使用率。

当租户的cpu核的平均使用率大于针对该租户预先设置的cpu核的期望使用率、且小于针对该租户预先设置的cpu核的最大使用率,且空闲链表为空时,则不再为第二租户分配cpu核。

当租户的cpu核的平均使用率大于针对该租户预先设置的cpu核的最大使用率,且空闲链表不为空时,则为该租户分配的确定个数的cpu核为空闲链表中存储的cpu核信息分别对应的cpu核。

当租户的cpu核的平均使用率大于针对该租户预先设置的cpu核的最大使用率,且空闲链表为空时,则为该租户分配的确定个数的cpu核为候选链表中存储的cpu核信息分别对应的cpu核。

需要说明的是,当cpu管理分配器若确定需要为至少两个租户分配cpu核,则按照至少两个租户中每个租户租用cpu核的租用优先级信息从高到低的顺序,分别为每个租户分配cpu核。

此外,当cpu管理分配器所管理的存储空间中增加新租户时,cpu管理分配器为该新租户分配cpu核链表中的至少一个cpu核信息分别对应的cpu核。

可选的,当cpu管理分配器所管理的存储空间中增加新租户时,cpu管理 分配器若确定空闲链表不为空,则为该新租户分配空闲链表中的至少一个cpu核信息分别对应的cpu核;若确定空闲链表为空,则为该新租户分配候选链表中的至少一个cpu核信息分别对应的cpu核,从而保证新租户能够分配到能够使用的cpu核。

租户信息存储在cpu管理分配器所管理的存储空间中,如图3所示,本发明实施例多租户共享资源的方法,包括:

步骤300,cpu管理分配器根据租户租用cpu核的优先级信息,确定存储空间中租户租用cpu的优先级的顺序。

cpu管理分配器确定空闲链表和候选链表中的能够用于重新分配的cpu核信息,按照租户租用cpu的优先级顺序,依次执行下列步骤:

步骤301,cpu管理分配器预估存储空间中已存储的租户的cpu核的平均使用率,该cpu核的平均使用率为该租户在设定时长内所租用的各个cpu核的使用率的平均值。

步骤302,cpu管理分配器判断该租户的cpu核的平均使用率是否小于针对该租户预先设置的cpu核的最小使用率,若是,则执行步骤304,否则执行步骤303;

步骤303,cpu管理分配器判断该租户的cpu核的平均使用率是否小于针对该租户预先设置的cpu核的期望使用率,若是,则执行步骤305,否则执行步骤306;

步骤304,cpu管理分配器确定该租户租用的cpu核中能够释放的cpu核的个数,并将能够释放的相应个数的cpu核信息添加到空闲链表中,空闲链表中保存的cpu核信息对应的cpu核用于重新分配,执行步骤306。

步骤305,cpu管理分配器确定该租户租用的cpu核中能够用于重新分配的cpu核的个数,并将能够用于重新分配的相应个数的cpu核信息以及该租户租用cpu核的优先级信息的映射添加到候选链表中,候选链表中保存的cpu核信息对应的cpu核用于重新分配,执行步骤306。

步骤306,cpu管理分配器判断存储空间是否还存在需要预估设定时长内cpu核的平均使用率的租户,若是,将当前租户切换为与当前租户优先级信息相邻的下一个租户,重新执行步骤301,否则执行步骤307;

cpu管理分配器按照cpu核的平均使用率大于预先设置的cpu核的期望使用率租户的优先级顺序,依次执行:

步骤307,cpu管理分配器在确定租户的cpu核的平均使用率大于针对该租户预先设置的期望使用率时,确定该租户需要申请租用的cpu核的个数;

步骤308,cpu管理分配器若确定租户的cpu核的平均使用率大于针对该租户预先设置的cpu核的最大使用率、且空闲链表不为空,则从空闲链表中选择需要申请个数的cpu核信息,并将选择的cpu核信息分别对应的cpu核分配给该租户使用。

步骤309,cpu管理分配器若确定租户的cpu核的平均使用率大于针对该租户预先设置的cpu核的最大使用率、且空闲链表为空,则从候选链表中按照租户租用cpu核优先级从低到高顺序,选择需要申请个数的cpu核信息,并将选择的cpu核信息分别对应的cpu核分配给该租户使用。

步骤310,cpu管理分配器若确定租户的cpu核的平均使用率大于针对该租户预先设置的cpu核的期望使用率、小于针对该租户预先设置的cpu核的最大使用率、且空闲链表为空,则不再为该租户分配cpu核。

步骤311,cpu管理分配器若确定租户的cpu核的平均使用率大于针对该租户预先设置的cpu核的期望使用率、小于针对该租户预先设置的cpu核的最大使用率、且空闲链表不为空,则从空闲链表中选择需要申请个数的cpu核信息,并将选择的cpu核信息分别对应的cpu核分配给该租户使用。

基于同一发明构思,本发明实施例中还提供了一种多租户共享资源的装置,由于本发明实施例多租户共享资源的装置对应的方法为一种多租户共享资源的方法,因此本发明实施例的设备的实施可以参见方法的实施,重复之处不再赘述。

如图4所示,本发明实施例多租户共享资源的装置,包括:

计算模块400,用于预估租户的cpu核的平均使用率,cpu核的平均使用率为租户在设定时长内所租用的各个cpu核的使用率的平均值,租户为cpu管理分配器管理的存储空间中已存储的任意租户;

判断模块401,用于在确定租户的cpu核的平均使用率小于针对租户预先设置的cpu核的期望使用率时,则将租户所租用的各个cpu核中的至少一个cpu核对应的cpu核信息添加到存储空间中预设的cpu核链表中,cpu核链表中存储的cpu核信息对应的cpu核用于重新分配;在确定租户的cpu核的平均使用率大于预先设置的cpu核的期望使用率时,则为租户分配cpu核链表中的至少一个cpu核信息分别对应的cpu核。

可选的该装置还包括:处理模块402,用于在存储空间中增加的新租户时,则为新租户分配cpu核链表中的至少一个cpu核信息分别对应的cpu核。

可选的,cpu核链表包括空闲链表和候选链表;判断模块401,具体用于当租户的cpu核的平均使用率小于针对租户预先设置的cpu核的最小使用率时,将租户所租用的各个cpu核中的至少一个cpu核对应的cpu核信息添加到空闲链表中;当租户的cpu核的平均使用率大于针对租户预先设置的cpu核的最小使用率、且小于针对租户预先设置的cpu核的期望使用率时,将租户所租用的各个cpu核中的至少一个cpu核对应的cpu核信息,以及租户租用cpu核的租用优先级信息映射添加到候选链表中;其中,租户的cpu核的期望使用率大于租户的cpu核的最小使用率。

可选的,判断模块401,具体用于若确定租户的cpu核的平均使用率大于针对租户预先设置的cpu核的最大使用率、且空闲链表为空,则按照候选链表中存储的租用优先级信息从低到高的顺序选择出的至少一个租用优先级信息分别对应的cpu核信息,将选择出的cpu核信息对应的cpu核分配给租户;若确定租户的cpu核的平均使用率大于针对租户预先设置的cpu核的期望使用率、且空闲链表不为空,则将空闲链表中的至少一个cpu核信息对应的cpu核 分配给租户;其中,租户的cpu核的期望使用率小于租户的cpu核的最大使用率。

可选的,判断模块401,还用于若确定租户的cpu核的平均使用率大于针对租户预先设置的cpu核的期望使用率、且小于针对租户预先设置的cpu核的最大使用率、且空闲链表为空,则不再为租户分配cpu核。

可选的,判断模块401,还用于若确定需要为至少两个租户分配cpu核,则按照至少两个租户中每个租户租用cpu核的租用优先级信息从高到低的顺序,分别为每个租户分配cpu核。

需要说明的是,本发明实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,另外,在本申请各个实施例中的各功能模块可以集成在一个处理模块中,也可以是单独物理存在,也可以两个或两个以上模块集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。

所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。

如图5所示,为本发明实施例多租户共享资源的装置50的硬件结构示意图,包括处理器51,存储器52,输入/输出接口53,通信接口54和总线55,其中,处理器51、存储器52、输入/输出接口53和通信接口54通过总线55实现彼此之间的通信连接,总线在图5中以粗线表示,其它部件之间的连接方式,仅是 进行示意性说明,并不引以为限。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图5中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。

处理器51可以包括通用的中央处理器(centralprocessingunit,cpu),微处理器,应用专用集成电路(applicationspecificintegratedcircuit,asic),或者一个或多个集成电路,用于执行相关程序,以实现本发明实施例所提供的技术方案。

存储器52可以是只读存储器(readonlymemory,rom),静态存储设备,动态存储设备或者随机存取存储器(randomaccessmemory,ram)。存储器52可以存储操作系统、其他应用程序和运算数据。在通过软件或者固件来实现本发明实施例提供的技术方案时,用于实现本发明实施例提供的技术方案的程序代码保存在存储器52中,并由处理器51来执行。

从上述内容可以看出,cpu管理分配器预估租户的cpu核的平均使用率,cpu核的平均使用率为租户在设定时长内所租用的各个cpu核的使用率的平均值,租户为cpu管理分配器管理的存储空间中已存储的任意租户,若确定租户的cpu核的平均使用率小于针对租户预先设置的cpu核的期望使用率,则将租户所租用的各个cpu核中的至少一个cpu核对应的cpu核信息添加到存储空间中预设的cpu核链表中,cpu核链表中存储的cpu核信息对应的cpu核用于重新分配,若确定租户的cpu核的平均使用率大于预先设置的cpu核的期望使用率,则为租户分配cpu核链表中的至少一个cpu核信息分别对应的cpu核,这种技术方案由于cpu管理分配器管理能够根据预估的租户的平均使用率,动态地分配存储空间中已存储的租户所租用的cpu核,从而避免了现有技术中因竞争导致的cpu核分配的不合理的问题,同时减少了cpu核的切换次数,从而提高了处理租户需求的效率。

本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结 合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。

本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。

显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1