云服务请求响应方法及装置、电子设备和存储介质
文献发布时间:2023-06-19 09:58:59
技术领域
本申请涉及计算机技术,具体涉及云服务请求响应方法及装置、电子设备和存储介质。
背景技术
随着互联网越来越发达,越来越多的租户选择云服务。在选择云服务时,租户通常会向云服务系统申请一定的云服务总额度,并在该云服务总额度范围内,发起云服务请求。
当云服务系统接收到租户发起的云服务请求后,需要在确定租户的该次请求在上述云服务总额度的范围内之后,才会响应该次云服务请求。
发明内容
有鉴于此,本申请至少公开一种云服务请求响应方法,应用于云服务系统;上述方法包括:
获取租户向上述云服务系统申请的云服务总额度;其中,上述云服务系统包括基于分布式架构构建的系统;
基于上述云服务总额度,向上述分布式架构包括的与上述租户对应的工作节点分配工作额度,以使上述工作节点根据自身对应的工作额度响应上述租户发起的云服务请求。
在示出的一些实施例中,上述基于上述云服务总额度,向上述分布式架构包括的各工作节点分配工作额度,包括:
基于上述云服务总额度中的部分额度,向上述分布式架构包括的与上述租户对应的工作节点分配工作额度。
在示出的一些实施例中,上述基于上述云服务总额度中的部分额度,向上述分布式架构包括与上述租户对应的各工作节点分配工作额度,包括:
根据上述工作节点对应的处理能力,确定预设时长内上述工作节点可达到的云服务请求响应量;其中,上述处理能力指示单位时长内可达到的云服务请求响应量;
根据上述工作节点对应的上述云服务请求响应量,向上述工作节点分配工作额度。
在示出的一些实施例中,上述基于上述云服务总额度中的部分额度,向上述分布式架构包括的与上述租户对应的工作节点分配工作额度,包括:
确定上述分布式架构包括的工作节点对应的额度权重;
基于上述云服务总额度中的部分额度,为上述工作节点分配与上述工作节点对应的额度权重相匹配的工作额度。
在示出的一些实施例中,上述确定上述分布式架构包括的各工作节点对应的额度权重,包括:
基于各工作节点的配置信息,根据预设的额度权重确定规则,确定上述各工作节点对应的额度权重;或,
基于各工作节点对应的处理能力,确定上述各工作节点对应的额度权重。
在示出的一些实施例中,上述方法还包括:
如果接收到任一工作节点提出的额度申请请求,基于剩余额度,向上述工作节点分配工作额度;其中,上述剩余额度包括,上述云服务总额度中除去已经被分配的工作额度之后剩余的额度。
在示出的一些实施例中,上述基于剩余额度,向上述工作节点分配工作额度,包括:
基于剩余额度,根据上述工作节点在预设时长内可达到的云服务请求响应量,向上述工作节点分配与上述云服务请求响应量匹配的工作额度。
在示出的一些实施例中,上述工作节点根据自身对应的工作额度响应上述租户发起的云服务请求,包括:
上述工作节点在接收到租户发起的云服务请求后,在自身对应的工作额度还有剩余时,响应上述云服务请求提供云服务计算,并根据上述计算对应的消耗额度调整自身剩余工作额度。
在示出的一些实施例中,上述工作节点根据自身对应的工作额度响应上述租户发起的云服务请求,还包括:
上述工作节点在接收到租户发起的云服务请求后,如果自身对应的工作额度没有剩余,向上述云服务系统提出额度申请请求,并在上述云服务总额度仍有剩余时,接收云服务系统基于剩余额度向上述工作节点分配的工作额度以响应上述云服务请求。
在示出的一些实施例中,上述方法还包括:
上述工作节点向上述云服务系统提出额度申请请求后,如果上述云服务总额度没有剩余,则将上述云服务请求转发到其他工作额度有剩余的工作节点进行处理。
在示出的一些实施例中,上述方法还包括:
上述工作节点对租户发起的用云服务请求进行计费。
在示出的一些实施例中,上述云服务包括AI云服务;上述获取租户向上述云服务系统申请的云服务总额度,包括:
获取租户向上述云服务系统申请的AI云服务总额度;
上述基于上述云服务总额度,向上述分布式架构包括的与上述租户对应的工作节点分配工作额度,以使上述工作节点根据自身对应的工作额度响应上述租户发起的云服务请求,包括:
基于上述AI云服务总额度,向上述分布式架构包括的与上述租户对应的工作节点分配工作额度,以使上述工作节点根据自身对应的工作额度响应上述租户发起的AI云服务请求。
本申请还提出一种云服务请求响应装置,应用于云服务系统;上述装置包括:
获取模块,用于获取租户向上述云服务系统申请的云服务总额度;其中,上述云服务系统包括基于分布式架构构建的系统;
分配模块,用于基于上述云服务总额度,向上述分布式架构包括的与上述租户对应的工作节点分配工作额度,以使上述工作节点根据自身对应的工作额度响应上述租户发起的云服务请求。
在示出的一些实施例中,上述分配模块具体用于:
基于上述云服务总额度中的部分额度,向上述分布式架构包括的与上述租户对应的工作节点分配工作额度。
在示出的一些实施例中,上述分配模块包括:
第一确定模块,用于根据上述工作节点对应的处理能力,确定预设时长内上述工作节点可达到的云服务请求响应量;其中,上述处理能力指示单位时长内可达到的云服务请求响应量;
分配子模块,用于根据上述工作节点对应的上述云服务请求响应量,向上述工作节点分配工作额度。
在示出的一些实施例中,上述分配模块包括:
第二确定模块,用于确定上述分布式架构包括的工作节点对应的额度权重;
分配子模块,用于基于上述云服务总额度中的部分额度,为上述工作节点分配与上述工作节点对应的额度权重相匹配的工作额度。
在示出的一些实施例中,上述第二确定模块具体用于:
基于各工作节点的配置信息,根据预设的额度权重确定规则,确定上述各工作节点对应的额度权重;或,
基于各工作节点对应的处理能力,确定上述各工作节点对应的额度权重。
在示出的一些实施例中,上述分配模块还用于:
如果接收到任一工作节点提出的额度申请请求,基于剩余额度,向上述工作节点分配工作额度;其中,上述剩余额度包括,上述云服务总额度中除去已经被分配的工作额度之后剩余的额度。
在示出的一些实施例中,上述分配模块具体用于:
基于剩余额度,根据上述工作节点在预设时长内可达到的云服务请求响应量,向上述工作节点分配与上述云服务请求响应量匹配的工作额度。
在示出的一些实施例中,上述分配模块具体用于:
基于上述云服务总额度,向上述分布式架构包括的与上述租户对应的工作节点分配工作额度,以使上述工作节点在接收到租户发起的云服务请求后,在自身对应的工作额度还有剩余时,响应上述云服务请求提供云服务计算,并根据上述计算对应的消耗额度调整自身剩余工作额度。
在示出的一些实施例中,上述分配模块具体用于:
基于上述云服务总额度,向上述分布式架构包括的与上述租户对应的工作节点分配工作额度,以使上述工作节点在接收到租户发起的云服务请求后,如果自身对应的工作额度没有剩余,向上述云服务系统提出额度申请请求,并在上述云服务总额度仍有剩余时,接收云服务系统基于剩余额度向上述工作节点分配的工作额度以响应上述云服务请求。
在示出的一些实施例中,上述分配模块具体用于:
基于上述云服务总额度,向上述分布式架构包括的与上述租户对应的工作节点分配工作额度,以使上述工作节点向上述云服务系统提出额度申请请求后,如果上述云服务总额度没有剩余,则将上述云服务请求转发到其他工作额度有剩余的工作节点进行处理。
在示出的一些实施例中,上述装置还包括:
计费模块,用于上述工作节点对租户发起的用云服务请求进行计费。
在示出的一些实施例中,上述云服务包括AI云服务;上述获取模块具体用于:
获取租户向上述云服务系统申请的AI云服务总额度;
上述分配模块具体用于:
基于上述AI云服务总额度,向上述分布式架构包括的与上述租户对应的工作节点分配工作额度,以使上述工作节点根据自身对应的工作额度响应上述租户发起的AI云服务请求。
本申请还提出一种电子设备,上述设备包括:
处理器;
用于存储上述处理器可执行指令的存储器;
其中,上述处理器被配置为调用上述存储器中存储的可执行指令,实现如前述任一实施例示出的云服务请求响应方法。
本申请还提出一种计算机可读存储介质,上述存储介质存储有计算机程序,上述计算机程序用于执行如前述任一实施例示出的云服务请求响应方法。
在上述技术方案中,上述由分布式架构构建的云服务系统可以基于租户向该系统申请的云服务总额度,向上述分布式架构包括的各工作节点分配工作额度,以使上述各工作节点自主根据自身对应的工作额度响应租户发起的云服务请求,避免上述云服务系统频繁地与上述各工作节点进行通讯来读写租户的云服务请求量,从而避免上述云服务系统频繁的网络I/O操作以及读写公共存储的锁定操作,保证了该系统的云服务请求的响应速度,进而保证租户体验。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。
附图说明
为了更清楚地说明本申请一个或多个实施例或相关技术中的技术方案,下面将对实施例或相关技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请一个或多个实施例中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请示出的一种云服务请求的响应方法的方法流程图;
图2为本申请示出的一种AI云服务系统与租户的交互示意图;
图3为本申请示出的云服务总额度分配示意图;
图4为本申请示出的云服务总额度分配示意图;
图5为本申请示出的一种云服务请求响应装置的结构示意图;
图6为本申请示出的一种电子设备的硬件结构示意图。
具体实施方式
下面将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的设备和方法的例子。
在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“上述”和“该”也旨在可以包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。还应当理解,本文中所使用的词语“如果”,取决于语境,可以被解释成为“在……时”或“当……时”或“响应于确定”。
在相关技术中,云服务系统为了确定租户发起的云服务请求是否在租户申请的云服务总额度范围内,会统计租户的云服务请求量。其中,上述租户可以包括多个用户。用户可以利用为自身分配的租户账号进行云服务申请。
在实际应用中,如果云服务请求的类型为云服务调用,上述云服务系统可以将云服务调用次数为维度统计租户的云服务请求量。如果云服务请求的类型为流数据处理,云服务系统可以将处理流量的字节数为维度统计租户的云服务请求量。
以下以租户发起的云服务请求为云服务调用请求为例进行说明。
例如,当租户发起云服务调用请求时,上述云服务系统可以确定当前统计的该租户的云服务调用请求次数是否达到该租户申请的云服务总额度(云服务总调用请求次数),如果未达到,则响应该次请求;否则,则限制该次请求。
不难理解,当上述云服务系统为单节点系统时(上述单节点系统,具体为仅通过一个节点提供云服务的系统),由于获取租户服务调用次数,或获取处理流量的字节数都比较方便,因此,统计租户的云服务请求量并不复杂,也就不会影响云服务系统对请求响应的速度。而当上述云服务系统为基于分布式架构构建的系统时,则可能由于分布式架构的原因,导致统计租户的云服务请求量变的很复杂,影响到云服务系统对请求响应的速度。
例如,当上述云服务系统为基于分布式架构构建的系统时,该系统可以为租户分配存储租户申请的云服务总额度,以及指示租户发起调用次数的使用额度的共享空间(例如,共享缓存或共享数据库)。
当上述云服务系统接收到租户发起的云服务调用请求时,该请求可能会被分发至上述分布式架构下的任一节点A。当该节点A接收到上述请求后,将通过I/O读取上述共享空间存储的云服务总额度以及该租户已经使用的使用额度(该租户发起的调用次数)。在读取到上述云服务总额度以及上述使用额度后,该租户可以判断上述云服务总额度是否大于上述使用额度。如果是,上述节点A则响应该次调用请求,并增加上述使用额度。然后,该节点A可以通过I/O将增加后的使用额度写上述共享空间。
不难发现,当上述云服务系统为基于分布式架构构建的系统时,由于租户发起的云服务调用请求或是流量处理请求,可能会被分发到该分布式架构下的任意节点,因此,上述云服务系统必须频繁地与分布式架构下的各节点进行通讯来读写租户的云服务请求量。而频繁的网络I/O操作、读写公共存储的锁定操作将可能导致该系统的云服务请求的响应效率变低,具有延迟,从而影响租户体验。
有鉴于此,本申请提出云服务请求的响应方法,应用于云服务系统。其中,上述云服务系统包括基于分布式架构构建的系统。
该方法通过将租户申请的云服务总额度分配至上述分布式架构下的各工作节点,以使各工作节点自主确定是否响应租户发起的云服务请求,避免上述云服务系统频繁地与上述各工作节点进行通讯来读写租户的云服务请求量,从而避免上述云服务系统频繁的网络I/O操作以及读写公共存储的锁定操作,保证了该系统的云服务请求的响应速度,进而保证租户体验。
请参见图1,图1为本申请示出的一种云服务请求的响应方法的方法流程图。
如图1所示,本申请示出的云服务请求的响应方法可以包括:
S102,获取租户向上述云服务系统申请的云服务总额度;其中,上述云服务系统包括基于分布式架构构建的系统;
S104,基于上述云服务总额度,向上述分布式架构包括的与上述租户对应的工作节点分配工作额度,以使上述工作节点根据自身对应的工作额度响应租户发起的云服务请求。
上述云服务系统(以下简称“系统”),具体为向租户提供云服务的系统。上述系统可以包括一定数量的硬件设备或软件装置,用以提供云服务,本申请不对上述系统包括的硬件设备和软件装置的类型做限定。
在实际应用中,租户可以向上述云服务系统申请一定的云服务总额度。在一些例子中,可以以租户可以发起的云服务调用次数为维度进行统计云服务总额度。租户可以在上述云服务总额度范围内,向上述云服务系统发起云服务调用请求,以享受云服务系统提供的服务。
上述云服务系统包括基于分布式架构构建的系统。上述分布式架构,具体可以是包括若干工作节点的架构。其中,工作节点(以下简称“节点”)可以是终端或服务器(终端或服务器可以是笔记本电脑,台式电脑,PAD终端等,本申请不对终端或服务器的设备种类和型号进行限定。)。
上述分布式架构通过其包括的工作节点提供算力,可以使上述云服务系统为租户提供云服务。需要说明的是,上述云服务类型可以是云服务调用或流量存储等,本申请不对云服务类型进行限定。
在一些实施例中,上述云服务系统可以包括AI云服务系统。
请参见图2,图2为本申请示出的一种AI云服务系统与租户的交互示意图。如图2所示,上述AI云服务系统为基于分布式架构构建的系统。其中,上述分布式架构包括工作节点A、B、C。需要说明的是,图2示出的云服务系统仅为示意性说明,不作特别限定。
在图2示出的AI云服务场景中,租户可以向AI云服务系统申请一定调用次数的云服务总额度。然后,租户可以通过调用接口(例如,HTTP调用)的方式向上述AI云服务系统发起诸如模型训练的服务调用请求。上述AI云服务系统在接收到上述调用请求后,可以按照预存的分发规律(例如,负载均衡分发规律),将该调用请求任务分发至分布式架构下的目标工作节点A,以使该节点A可以根据自身对应的工作额度响应租户发起的云服务请求,并将响应结果返回至租户。
上述云服务总额度,具体为租户可以享受的云服务系统提供的总服务量。
在实际应用中,如果租户申请的云服务类型为云服务调用,上述云服务系统可以将云服务调用次数为维度统计租户的上述总服务量。如果租户申请的云服务类型为流数据处理,云服务系统可以将处理流量的字节数为维度统计租户的上述总服务量。
需要说明的是,一方面,本申请不对云服务总额度的统计维度进行限定。以下以云服务类型为云服务调用请求为例进行说明。另一方面,在一些例子中,租户可以通过付费购买的方式申请上述总额度。在一些例子中,租户可以通过申请试用申请上述总额度。本申请不对租户申请云服务总额度的方式进行限定。
上述工作节点,可以根据自身对应的工作额度响应租户发起的云服务请求。
在一些例子中,上述工作节点可以对租户发起的云服务请求进行计费。例如,工作节点可以维护与租户对应的额度汇总表。上述额度汇总表可以统计组合的剩余额度,已使用额度等信息。当某一工作节点响应该租户发起的云服务请求后,可以增加上述已使用额度以完成对租户发起的云服务请求的计费。
上述工作额度,具体是指工作节点可以响应的云服务请求量。上述工作节点在接收到租户发起的云服务请求时,可以通过判断工作额度是否有剩余来确定自身是否响应该云服务请求。
当工作节点每响应一次云服务请求,可以相应消耗对应的云服务请求量。例如,以调用次数统计云服务请求量时,每当工作节点响应一次该租户发起的调用请求,则可以响应消耗1个单位的工作额度。
在一些例子中,上述工作额度可以包括两方面的额度。其一,上述工作额度可以是,在租户申请云服务总额度之后,由上述系统为上述各节点初始分配的工作额度,以使各节点可以进行运作。其二,上述工作额度可以是,在各节点运作过程中,当被分配的工作额度消耗完毕后,向上述系统申请的工作额度,以使各节点可以补充工作额度,继续运作。
上述云服务请求,具体是租户向上述系统发起的云服务请求。上述云服务请求可以包括云服务调用请求,和/或流数据处理请求。
需要说明的是,通常租户发起的云服务请求类型与租户申请的云服务类型有关。
例如,当租户申请的云服务类型为云服务调用,租户可以发起云服务调用请求。当租户申请的云服务类型既包括云服务调用,也包括流数据处理时,租户既可以发起云服务调用请求,也可以发起流量处理请求。
在一些实施例中,上述工作节点在接收到租户发起的云服务请求后,可以在自身对应的工作额度还有剩余时,响应上述云服务请求提供云服务计算,并根据上述计算对应的消耗额度调整自身剩余工作额度。
例如,请参见图2,在接收到租户发起的云服务请求后,上述工作节点A可以判断自身工作额度是否有剩余。如果自身工作额度有剩余,上述节点A则可以响应该次云服务请求,并消耗1个单位的工作额度。如果上述工作额度没有剩余,上述节点A则可以限制该次云服务请求。
需要说明的是,本申请不对工作节点确定工作额度是否有剩余的方式进行限定。在一些实施例中,工作节点可以存储被系统分配的工作额度,以及该节点响应过的云服务请求量。此时,在确定工作额度是否有剩余时,可以将工作额度减去当前响应过的云服务请求量得到相应结果。如果该结果大于0则确定上述工作额度有剩余,反之则没有剩余。在一些实施例中,工作节点可以存储剩余额度。即,剩余额度初始值为被系统分配的工作额度,工作节点每响应一次云服务请求,则调整剩余额度值。此时,在确定工作额度是否有剩余时,可以确定剩余额度是否大于0,如果是,则确定上述工作额度有剩余,反之则没有剩余。
在一些实施例中,上述工作节点在接收到租户发起的云服务请求后,如果自身对应的工作额度没有剩余,可以向上述系统提出额度申请请求,并在上述云服务总额度仍有剩余时,接收云服务系统基于剩余额度向上述工作节点分配的工作额度以响应上述云服务请求。
例如,请参见图2,在接收到租户发起的云服务请求后,上述工作节点A可以判断自身工作额度是否有剩余。如果上述工作额度没有剩余,上述节点A则可以先向上述系统提出额度申请请求。上述系统在接收到上述额度申请请求后,可以确定与上述租户对应的云服务总额度是否仍剩余,如果仍存在剩余额度,则会向该节点A继续分配工作额度。上述节点A在接收到工作额度后,则会继续响应该次云服务请求。
在一些实施例中,上述工作节点向上述云服务系统提出额度申请请求后,如果上述云服务总额度没有剩余,则将上述云服务请求转发到其他工作额度有剩余的工作节点进行处理。
例如,请参见图2,假设上述系统中存储了各工作节点的工作状态(上述工作状态是指节点是否可以响应请求,即是否仍有工作额度)。当某一工作节点A在接收到租户发起的云服务请求后,如果自身对应的工作额度没有剩余,并且上述云服务总额度没有剩余,该节点A则可以通过上述系统查询其他各工作节点的工作状态。如果查询到仍然可以进行云服务响应的节点B,节点A则可以将上述请求路由至上述节点B,以使该节点B响应该请求。
在本实施例中,由于各工作节点在接收到租户发起的云服务请求后,如果自身对应的工作额度没有剩余,并且上述云服务总额度没有剩余,则将上述云服务请求转发到其他工作额度有剩余的工作节点进行处理,因此,可以使云服务系统尽可能的在租户申请的总额度范围内向租户提供云服务,从而提升租户体验。
当然,上述各工作节点在接收到租户发起的云服务请求后,如果自身对应的工作额度没有剩余,上述云服务总额度也没有剩余,并且也没有工作额度有剩余的工作节点,那么则限制上述租户的该次云服务请求。
在上述技术方案中,上述由分布式架构构建的云服务系统可以基于租户向该系统申请的云服务总额度,向上述分布式架构包括的各工作节点分配工作额度,以使上述各工作节点自主根据自身对应的工作额度响应租户发起的云服务请求,避免上述云服务系统频繁地与上述各工作节点进行通讯来读写租户的云服务请求量,从而避免上述云服务系统频繁的网络I/O操作以及读写公共存储的锁定操作,保证了该系统的云服务请求的响应速度,进而保证租户体验。
在一些实施例中,上述系统在执行上述S104,基于上述云服务总额度,向上述分布式架构包括的与上述租户对应的工作节点分配工作额度时,可以基于上述云服务总额度中的部分额度,向上述分布式架构包括的与上述租户对应的工作节点分配工作额度。
在这里,由于在对上述工作节点分配工作额度时仅利用了总额度中的部分额度,因此可以实现对工作节点的多次工作额度分配,从而避免由于一次分配带来的分配不合理的问题。
在一些实施例中,在基于上述云服务总额度中的部分额度,向上述分布式架构包括的与上述租户对应的工作节点分配工作额度时,按照各工作节点对应的额度权重,将上述云服务总额度分发至各工作节点。
在实际应用中,上述系统可以先获取上述分布式架构包括的工作节点对应的额度权重。在确定工作节点对应的额度权重后,上述系统可以基于上述云服务总额度中的部分额度,为上述工作节点分配与上述工作节点对应的额度权重相匹配的工作额度。
上述各工作节点对应的额度权重,具体可以是预设的固定值。例如,可以将各工作节点对应的额度权重设置为相同的数值。此时,在分配工作额度时,可以将总额度平均分给每一个工作节点。
在一些实施例中,在确定上述额度权重时,基于各工作节点的配置信息,根据预设的额度权重确定规则,确定上述各工作节点对应的额度权重。
例如,在构建上述系统时,可以维护各工作节点对应的配置信息表。例如,工作节点CPU、GPU处理性能,硬盘型号等。在确定上述分布式架构包括的各工作节点对应的额度权重时,可以查询各工作节点对应的配置信息表,确定各个工作节点的配置信息。
在确定各工作节点对应的配置信息后,上述系统可以根据预设的额度权重确定规则,确定上述各工作节点对应的额度权重。
在一些实施例中,上述额度权重确定规则,可以是先对各工作节点的各项配置信息打分。然后再对各分数进行加权求和,得到各工作节点对应的总分。最后,根据各工作节点对应的总分确定各工作节点的权重。
由于在确定上述分布式架构包括的各工作节点对应的额度权重时,上述系统可以基于各工作节点的配置信息,根据预设的额度权重确定规则,确定上述各工作节点对应的额度权重,因此,可以合理的为各工作节点分配工作额度,使得配置高的节点可以分配较多的工作额度,从而提升云服务系统的响应速度,提升租户体验。
在一些实施例中,在上述确定上述分布式架构包括的各工作节点对应的额度权重时,上述系统可以基于各工作节点对应的处理能力,确定上述各工作节点对应的额度权重;其中,上述处理能力指示单位时长内可达到的云服务请求响应量。
例如,上述系统可以通过测试的方式,确定各工作节点在单位时长内可达到的云服务请求响应量(处理能力)。在确定各工作节点对应的处理能力后,上述系统可以根据各工作节点对应的处理能力,确定各工作节点的额度权重。
由于在为各工作节点分配工作额度时,可以根据各工作节点的处理能力进行分配,因此,可以合理的为各工作节点分配工作额度,使处理能力强的节点可以分配较多的工作额度,从而提升云服务系统的响应速度,提升租户体验。
在一些例子中,在基于上述云服务总额度中的部分额度,向上述分布式架构包括与上述租户对应的各工作节点分配工作额度时,上述系统可以在根据上述工作节点对应的处理能力,确定预设时长内上述工作节点可达到的云服务请求响应量。其中,上述处理能力指示单位时长内可达到的云服务请求响应量。在确定上述工作节点对应的上述云服务请求响应量后,上述系统可以根据上述工作节点对应的上述云服务请求响应量,向上述工作节点分配工作额度。
在一些例子中,上述系统可以根据各工作节点在预设时长内可达到的云服务请求响应量的和,确定为上述参与初始分配的部分额度的值。在根据上述各工作节点对应的上述云服务请求响应量,向上述各工作节点分配工作额度时,上述系统可以将上述各工作节点对应的上述云服务请求响应量确定为上述各工作节点对应的工作额度,分配至上述各工作节点。
上述预设时长,具体可以是根据经验设定的值。例如,1分钟。
请参见图3,图3为本申请示出的云服务总额度分配示意图。
如图3所示,分布式架构包括的工作节点A对应的1分钟内可达到的云服务请求响应量为深灰色方块。工作节点B对应的1分钟内可达到的云服务请求响应量为浅灰色方块。工作节点C对应的1分钟内可达到的云服务请求响应量为黑色方块。
上述系统初次进行工作额度分配时,可以从总额度中,向工作节点A分配深灰色方块示意的工作额度,向工作节点B分配浅灰色方块示意的工作额度,向工作节点C分配黑色方块示意的工作额度。
由于在基于上述云服务总额度中的部分额度,向上述分布式架构包括的各工作节点分配工作额度时,上述系统可以在根据上述各工作节点对应的处理能力,确定预设时长内上述各工作节点可达到的云服务请求响应量。其中,上述处理能力指示单位时长内可达到的云服务请求响应量。在确定上述各工作节点对应的上述云服务请求响应量后,上述系统可以将上述各工作节点对应的上述云服务请求响应量确定为上述各工作节点对应的工作额度,分配至上述各工作节点,因此,可以确定合理的参与初始分配的部分额度,并合理的向各节点分配初始工作额度,从而进一步提升云服务工作效率。
在实际情形中,由于各节点消耗工作额度的速率并不相同,因此,如果将云服务总额度一次性分配完,将可能导致部分工作节点的工作已经消耗完毕,但是还有部分工作节点处于工作额度剩余状态,从而使部分节点闲置,营销云服务系统工作效率。
为了改善这一情形,在一些实施例中,在为各工作节点分配总额度时,无需一次性分配完,而是在任一工作节点进行额度申请时,再进行分配,从而使点消耗工作额度的速率快的工作节点可以多次接收工作额度分配,从而提升云服务系统的响应速度,提升租户体验。
在实际应用中,上述系统在基于上述云服务总额度,向上述分布式架构包括的各工作节点分配工作额度时,可以基于上述云服务总额度中的部分额度,向上述分布式架构包括的各工作节点分配工作额度。并且,当上述系统接收到上述各工作节点中的任一工作节点提出的额度申请请求,基于剩余额度,向上述工作节点分配工作额度。
其中,上述剩余额度包括,上述云服务总额度中除去已经被分配的工作额度之后剩余的额度。
在一些实施例中,上述系统在进行总额度分配时,可以先确定初始分配的部分额度的值,以及分配规则。例如,可以指定将总额度的三分之一进行初始分配,以及采用平均分配的规则。此时,上述系统可以将总额度的三分之一额度平均分配至各工作节点。
之后,上述系统在接收到任一工作节点提出的额度申请请求,可以查询是否还有剩余额度,如果有,则可以向上述工作节点分配工作额度。
由于在为各工作节点分配总额度时,无需一次性分配完,而是在任一工作节点进行额度申请时,再进行分配,从而使得消耗工作额度的速率快的工作节点可以多次接收工作额度分配,从而提升云服务系统的响应速度,提升租户体验。
在一些实施例中,在基于剩余额度,向上述工作节点分配工作额度时,上述系统可以根据上述工作节点在预设时长内可达到的云服务请求响应量,向上述工作节点分配与上述云服务请求响应量匹配的工作额度。
上述预设时长,具体可以是根据经验设定的值。例如,1分钟。
请参见图4,图4为本申请示出的云服务总额度分配示意图。
如图4所示,斜线框代表节点对应额工作额度被消耗完毕。当节点A将分配的工作额度消耗完毕,向上述系统发起额度申请时,上述系统可以从剩余额度中,划分出节点A在1分钟内可达到的云服务请求响应量。然后上述系统可以将与该请求响应量对应的工作额度(图4中深灰色框)分配至节点A。
由于在向上述工作节点分配工作额度时,上述系统可以根据上述工作节点在预设时长内可达到的云服务请求响应量,向上述工作节点分配与上述云服务请求响应量匹配的工作额度,因此,上述系统可以向工作节点分配符合节点处理能力的工作额度,使处理能力强的节点可以分配较多的工作额度,从而提升云服务系统的响应速度,提升租户体验。
可以理解的是,当上述总额度被消耗完毕时,则表示租户申请的云服务总额度已消耗完毕。
与上述任一实施例相对应的,本申请还提出一种云服务请求响应装置。
请参见图5,图5为本申请示出的一种云服务请求响应装置的结构示意图。
如图5所示,上述装置50可以包括:
获取模块51,用于获取租户向上述云服务系统申请的云服务总额度;其中,上述云服务系统包括基于分布式架构构建的系统;
分配模块52,用于基于上述云服务总额度,向上述分布式架构包括的与上述租户对应的工作节点分配工作额度,以使上述工作节点根据自身对应的工作额度响应上述租户发起的云服务请求。
在示出的一些实施例中,上述分配模块52具体用于:
基于上述云服务总额度中的部分额度,向上述分布式架构包括的与上述租户对应的工作节点分配工作额度。
在示出的一些实施例中,上述分配模块52包括:
第一确定模块,用于根据上述工作节点对应的处理能力,确定预设时长内上述工作节点可达到的云服务请求响应量;其中,上述处理能力指示单位时长内可达到的云服务请求响应量;
分配子模块,用于根据上述工作节点对应的上述云服务请求响应量,向上述工作节点分配工作额度。
在示出的一些实施例中,上述分配模块52包括:
第二确定模块,用于确定上述分布式架构包括的工作节点对应的额度权重;
分配子模块,用于基于上述云服务总额度中的部分额度,为上述工作节点分配与上述工作节点对应的额度权重相匹配的工作额度。
在示出的一些实施例中,上述第二确定模块具体用于:
基于各工作节点的配置信息,根据预设的额度权重确定规则,确定上述各工作节点对应的额度权重;或,
基于各工作节点对应的处理能力,确定上述各工作节点对应的额度权重。
在示出的一些实施例中,上述分配模块52还用于:
如果接收到任一工作节点提出的额度申请请求,基于剩余额度,向上述工作节点分配工作额度;其中,上述剩余额度包括,上述云服务总额度中除去已经被分配的工作额度之后剩余的额度。
在示出的一些实施例中,上述分配模块52具体用于:
基于剩余额度,根据上述工作节点在预设时长内可达到的云服务请求响应量,向上述工作节点分配与上述云服务请求响应量匹配的工作额度。
在示出的一些实施例中,上述分配模块52具体用于:
基于上述云服务总额度,向上述分布式架构包括的与上述租户对应的工作节点分配工作额度,以使上述工作节点在接收到租户发起的云服务请求后,在自身对应的工作额度还有剩余时,响应上述云服务请求提供云服务计算,并根据上述计算对应的消耗额度调整自身剩余工作额度。
在示出的一些实施例中,上述分配模块52具体用于:
基于上述云服务总额度,向上述分布式架构包括的与上述租户对应的工作节点分配工作额度,以使上述工作节点在接收到租户发起的云服务请求后,如果自身对应的工作额度没有剩余,向上述云服务系统提出额度申请请求,并在上述云服务总额度仍有剩余时,接收云服务系统基于剩余额度向上述工作节点分配的工作额度以响应上述云服务请求。
在示出的一些实施例中,上述分配模块52具体用于:
基于上述云服务总额度,向上述分布式架构包括的与上述租户对应的工作节点分配工作额度,以使上述工作节点向上述云服务系统提出额度申请请求后,如果上述云服务总额度没有剩余,则将上述云服务请求转发到其他工作额度有剩余的工作节点进行处理。
在示出的一些实施例中,上述装置50还包括:
计费模块,用于上述工作节点对租户发起的用云服务请求进行计费。
在示出的一些实施例中,上述云服务包括AI云服务;上述获取模块51具体用于:
获取租户向上述云服务系统申请的AI云服务总额度;
上述分配模块52具体用于:
基于上述AI云服务总额度,向上述分布式架构包括的与上述租户对应的工作节点分配工作额度,以使上述工作节点根据自身对应的工作额度响应上述租户发起的AI云服务请求。
本申请示出的云服务请求响应装置的实施例可以应用于电子设备上。相应地,本申请公开了一种电子设备,该设备可以包括:处理器。
用于存储处理器可执行指令的存储器。
其中,上述处理器被配置为调用上述存储器中存储的可执行指令,实现如上述任一实施例示出的云服务请求响应方法。
请参见图6,图6为本申请示出的一种电子设备的硬件结构示意图。
如图6所示,该电子设备可以包括用于执行指令的处理器,用于进行网络连接的网络接口,用于为处理器存储运行数据的内存,以及用于存储云服务请求响应装置对应指令的非易失性存储器。
其中,云服务请求响应装置的实施例可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。以软件实现为例,作为一个逻辑意义上的装置,是通过其所在电子设备的处理器将非易失性存储器中对应的计算机程序指令读取到内存中运行形成的。从硬件层面而言,除了图6所示的处理器、内存、网络接口、以及非易失性存储器之外,实施例中装置所在的电子设备通常根据该电子设备的实际功能,还可以包括其他硬件,对此不再赘述。
可以理解的是,为了提升处理速度,云服务请求响应装置对应指令也可以直接存储于内存中,在此不作限定。
本申请提出一种计算机可读存储介质,上述存储介质存储有计算机程序,上述计算机程序用于执行上述任一实施例示出的云服务请求响应方法。
本领域技术人员应明白,本申请一个或多个实施例可提供为方法、系统或计算机程序产品。因此,本申请一个或多个实施例可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请一个或多个实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(可以包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请中的“和/或”表示至少具有两者中的其中一个,例如,“A和/或B”可以包括三种方案:A、B、以及“A和B”。
本申请中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于数据处理设备实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
上述对本申请特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的行为或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
本申请中描述的主题及功能操作的实施例可以在以下中实现:数字电子电路、有形体现的计算机软件或固件、可以包括本申请中公开的结构及其结构性等同物的计算机硬件、或者它们中的一个或多个的组合。本申请中描述的主题的实施例可以实现为一个或多个计算机程序,即编码在有形非暂时性程序载体上以被数据处理装置执行或控制数据处理装置的操作的计算机程序指令中的一个或多个模块。可替代地或附加地,程序指令可以被编码在人工生成的传播信号上,例如机器生成的电、光或电磁信号,该信号被生成以将信息编码并传输到合适的接收机装置以由数据处理装置执行。计算机存储介质可以是机器可读存储设备、机器可读存储基板、随机或串行存取存储器设备、或它们中的一个或多个的组合。
本申请中描述的处理及逻辑流程可以由执行一个或多个计算机程序的一个或多个可编程计算机执行,以通过根据输入数据进行操作并生成输出来执行相应的功能。上述处理及逻辑流程还可以由专用逻辑电路—例如FPGA(现场可编程门阵列)或ASIC(专用集成电路)来执行,并且装置也可以实现为专用逻辑电路。
适合用于执行计算机程序的计算机可以包括,例如通用和/或专用微处理器,或任何其他类型的中央处理单元。通常,中央处理单元将从只读存储器和/或随机存取存储器接收指令和数据。计算机的基本组件可以包括用于实施或执行指令的中央处理单元以及用于存储指令和数据的一个或多个存储器设备。通常,计算机还将可以包括用于存储数据的一个或多个大容量存储设备,例如磁盘、磁光盘或光盘等,或者计算机将可操作地与此大容量存储设备耦接以从其接收数据或向其传送数据,抑或两种情况兼而有之。然而,计算机不是必须具有这样的设备。此外,计算机可以嵌入在另一设备中,例如移动电话、个人数字助理(PDA)、移动音频或视频播放器、游戏操纵台、全球定位系统(GPS)接收机、或例如通用串行总线(USB)闪存驱动器的便携式存储设备,仅举几例。
适合于存储计算机程序指令和数据的计算机可读介质可以包括所有形式的非易失性存储器、媒介和存储器设备,例如可以包括半导体存储器设备(例如EPROM、EEPROM和闪存设备)、磁盘(例如内部硬盘或可移动盘)、磁光盘以及CD ROM和DVD-ROM盘。处理器和存储器可由专用逻辑电路补充或并入专用逻辑电路中。
虽然本申请包含许多具体实施细节,但是这些不应被解释为限制任何公开的范围或所要求保护的范围,而是主要用于描述特定公开的具体实施例的特征。本申请内在多个实施例中描述的某些特征也可以在单个实施例中被组合实施。另一方面,在单个实施例中描述的各种特征也可以在多个实施例中分开实施或以任何合适的子组合来实施。此外,虽然特征可以如上上述在某些组合中起作用并且甚至最初如此要求保护,但是来自所要求保护的组合中的一个或多个特征在一些情况下可以从该组合中去除,并且所要求保护的组合可以指向子组合或子组合的变型。
类似地,虽然在附图中以特定顺序描绘了操作,但是这不应被理解为要求这些操作以所示的特定顺序执行或顺次执行、或者要求所有例示的操作被执行,以实现期望的结果。在某些情况下,多任务和并行处理可能是有利的。此外,上述实施例中的各种系统模块和组件的分离不应被理解为在所有实施例中均需要这样的分离,并且应当理解,所描述的程序组件和系统通常可以一起集成在单个软件产品中,或者封装成多个软件产品。
由此,主题的特定实施例已被描述。其他实施例在所附权利要求书的范围以内。在某些情况下,权利要求书中记载的动作可以以不同的顺序执行并且仍实现期望的结果。此外,附图中描绘的处理并非必需所示的特定顺序或顺次顺序,以实现期望的结果。在某些实现中,多任务和并行处理可能是有利的。
以上仅为本申请一个或多个实施例的较佳实施例而已,并不用以限制本申请一个或多个实施例,凡在本申请一个或多个实施例的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请一个或多个实施例保护的范围之内。
- 云服务请求响应方法及装置、电子设备和存储介质
- 请求响应方法、请求响应装置、电子设备及可读存储介质