CN113641505B - 一种服务器集群的资源分配控制方法和装置 - Google Patents
一种服务器集群的资源分配控制方法和装置 Download PDFInfo
- Publication number
- CN113641505B CN113641505B CN202111195201.8A CN202111195201A CN113641505B CN 113641505 B CN113641505 B CN 113641505B CN 202111195201 A CN202111195201 A CN 202111195201A CN 113641505 B CN113641505 B CN 113641505B
- Authority
- CN
- China
- Prior art keywords
- server
- request
- target
- request processing
- time period
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 119
- 238000013468 resource allocation Methods 0.000 title claims abstract description 35
- 230000008569 process Effects 0.000 claims description 65
- 238000004590 computer program Methods 0.000 claims description 22
- 238000003860 storage Methods 0.000 claims description 8
- 238000010586 diagram Methods 0.000 description 15
- 238000004891 communication Methods 0.000 description 13
- 230000005540 biological transmission Effects 0.000 description 9
- 230000006870 function Effects 0.000 description 5
- 238000009826 distribution Methods 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 230000007423 decrease Effects 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 230000000737 periodic effect Effects 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000004075 alteration Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000002035 prolonged effect Effects 0.000 description 1
Images
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
Abstract
本申请实施例提供了一种服务器集群的资源分配控制方法和装置,所述方法包括:获取服务器集群中各个服务器在时间周期内所分配的请求处理数;根据各个服务器的时间周期内所分配的请求处理数,向目标通道发送目标资源;若目标资源的目标请求数超过在时间周期内所分配的请求处理数,则根据各个服务器的在下一个时间周期内所分配的请求处理数向目标通道发送目标资源,直至向目标通道发送目标请求数的目标资源为止。通过进行请求数的预留递推方式实现对发送至某个通道中流量的限制,无需在发放资源之前对缓存中的已发放请求数进行查询,在避免出现脉冲问题的情况下实现对通道资源的控制。
Description
技术领域
本申请涉及计算机技术领域,特别是涉及一种服务器集群的资源分配控制方法和一种服务器集群的资源分配控制装置。
背景技术
集群(Cluster)指的是可以将多个系统连接到一起,使得多个服务器能够像一个服务器那样工作,以提高系统的稳定性和网络中心的数据处理能力以及服务能力,分布式系统(Distributed System)是服务器集群常用的通信模式,整个系统的功能可以通过分散在各个节点上实现。
在云通信领域中,系统中通信的资源能够通过通道实现传输,可以存在多个用于资源传输的通道,各个通道可以支持一定的并发处理,且各个通道所能够承受的资源请求处理数可能是不一样的。在接收到所传输的请求时,系统需要决定往哪个通道上发送此请求,这里将会存在限制某个通道所能够发送的QPS(Query Per Second,每秒请求数,指的是一秒的请求量或者处理的请求量)不能超过通道所具备的发送能力的情况,那么一般采用集群的模式,并通过一个统一分布式缓存中间件对集群的QPS进行限制,但此限制方式将会出现分布式缓存的热点问题,导致系统的性能急剧下降。
发明内容
鉴于上述问题,提出了本申请实施例以便提供一种克服上述问题或者至少部分地解决上述问题的一种服务器集群的资源分配控制方法和相应的一种服务器集群的资源分配控制装置。
本申请实施例公开了一种服务器集群的资源分配控制方法,所述方法包括:
获取服务器集群中各个服务器在时间周期内所分配的请求处理数;所述时间周期基于预设时间步长划分,所述各个服务器在时间周期内所分配的请求处理数基于目标通道所限制的请求数阈值确定;
根据各个服务器的时间周期内所分配的请求处理数,向目标通道发送目标资源;
若目标资源的目标请求数超过在时间周期内所分配的请求处理数,则根据各个服务器的在下一个时间周期内所分配的请求处理数向目标通道发送目标资源,直至向目标通道发送目标请求数的目标资源为止。
可选地,所述各个服务器在时间周期内所分配的请求处理数包括针对不同通道所分配的请求处理数;
所述获取服务器集群中各个服务器在时间周期内所分配的请求处理数,包括:
获取各个通道在预设时间步长内所限制的请求数阈值,采用所述请求数阈值确定各个服务器在预设步长内所分配的请求处理数;
采用所述各个服务器在预设步长内所分配的请求处理数,确定各个服务器在针对不同通道的时间周期内所分配的请求处理数。
可选地,所述采用所述请求数阈值确定各个服务器在预设步长内所分配的请求处理数,包括:
获取在所述服务器集群中服务器的数量,基于各个通道在预设时间步长内所限制的请求数阈值和服务器的数量,确定各个服务器在预设时间步长内所分配的请求处理数。
可选地,所述请求处理数具有小数点;所述确定各个服务器在预设步长内所分配的请求处理数,包括:
获取各个服务器的源地址和各个服务器用于发送资源的当前时间周期,基于所述源地址和所述当前时间周期得到哈希值,并采用所述哈希值取余数得到用于衡量是否将所述请求处理数向上取整的随机数;
若所述随机数小于所述请求处理数中位于小数点后的数值,则向上取整所述具有小数点的请求处理数。
可选地,所述采用所述各个服务器在预设步长内所分配的请求处理数,确定各个服务器在针对不同通道的时间周期内所分配的请求处理数,包括:
基于各个服务器当前时间的秒数值对预设时间步长划分为多个时间周期;
将所述各个服务器在针对不同通道的预设步长内所分配的请求处理数,按照所划分的多个时间周期的周期数进行分配,得到在针对不同通道的时间周期内所分配的请求处理数。
可选地,所述确定各个服务器在针对不同通道的时间周期内所分配的请求处理数,包括:
获取各个服务器的前置偏移量,在基于预设时间步长划分多个时间周期时,将所述各个服务器当前时间的秒数值叠加所述前置偏移量进行划分,以便基于所划分的时间周期对相应请求处理数进行分配。
可选地,根据各个服务器的时间周期内所分配的请求处理数向目标通道发送目标资源,包括:
获取针对所述目标通道在预设时间步长内所分配的请求处理数,以及确定针对所述目标通道已发送资源的总请求数;
在所述目标通道已发送资源的总请求数未超过在预设时间步长内所分配的请求处理数的情况下,向目标通道发送目标资源。
可选地,在所述根据各个服务器的在下一个时间周期内所分配的请求处理数向目标通道发送目标资源之后,还包括:
将所述各个服务器在下一个时间周期内所分配的请求处理数减去与所发送目标资源的相应请求数,以便采用减去后的请求处理数向目标通道发送新的目标资源。
本申请实施例还公开了一种服务器集群的资源分配控制装置,所述装置包括:
请求处理数获取模块,用于获取服务器集群中各个服务器在时间周期内所分配的请求处理数;所述时间周期基于预设时间步长划分,所述各个服务器在时间周期内所分配的请求处理数基于目标通道所限制的请求数阈值确定;
第一资源发送模块,用于根据各个服务器的时间周期内所分配的请求处理数,向目标通道发送目标资源;
第二资源发送模块,用于在目标资源的目标请求数超过在时间周期内所分配的请求处理数时,根据各个服务器的在下一个时间周期内所分配的请求处理数向目标通道发送目标资源,直至向目标通道发送目标请求数的目标资源为止。
可选地,所述各个服务器在时间周期内所分配的请求处理数包括针对不同通道所分配的请求处理数;所述请求处理数获取模块包括:
第一请求处理数确定子模块,用于获取各个通道在预设时间步长内所限制的请求数阈值,采用所述请求数阈值确定各个服务器在预设步长内所分配的请求处理数;
第二请求处理数确定子模块,用于采用所述各个服务器在预设步长内所分配的请求处理数,确定各个服务器在针对不同通道的时间周期内所分配的请求处理数。
可选地,所述第一请求处理数确定子模块包括:
第一请求处理数确定单元,用于获取在所述服务器集群中服务器的数量,基于各个通道在预设时间步长内所限制的请求数阈值和服务器的数量,确定各个服务器在预设时间步长内所分配的请求处理数。
可选地,所述请求处理数具有小数点;所述第一请求处理数确定单元包括:
随机数生成子单元,用于获取各个服务器的源地址和各个服务器用于发送资源的当前时间周期,基于所述源地址和所述当前时间周期得到哈希值,并采用所述哈希值取余数得到用于衡量是否将所述请求处理数向上取整的随机数;
第一请求处理数确定子单元,用于在所述随机数小于所述请求处理数中位于小数点后的数值的情况下,向上取整所述具有小数点的请求处理数。
可选地,所述第二请求处理数确定子模块包括:
时间周期划分单元,用于基于各个服务器当前时间的秒数值对预设时间步长划分为多个时间周期;
请求处理数分配单元,用于将所述各个服务器在针对不同通道的预设步长内所分配的请求处理数,按照所划分的多个时间周期的周期数进行分配,得到在针对不同通道的时间周期内所分配的请求处理数。
可选地,所述时间周期划分单元包括:
时间周期划分子单元,用于获取各个服务器的前置偏移量,在基于预设时间步长划分多个时间周期时,将所述各个服务器当前时间的秒数值叠加所述前置偏移量进行划分,以便基于所划分的时间周期对相应请求处理数进行分配。
可选地,所述第一资源发送模块和所述第二资源发送模块包括:
已发送请求数确定子模块,用于获取针对所述目标通道在预设时间步长内所分配的请求处理数,以及确定针对所述目标通道已发送资源的总请求数;
资源发送子模块,用于在所述目标通道已发送资源的总请求数未超过在预设时间步长内所分配的请求处理数的情况下,向目标通道发送目标资源。
可选地,在所述根据各个服务器的在下一个时间周期内所分配的请求处理数向目标通道发送目标资源之后,所述装置还包括:
请求数处理模块,用于将所述各个服务器在下一个时间周期内所分配的请求处理数减去与所发送目标资源的相应请求数,以便采用减去后的请求处理数向目标通道发送新的目标资源。
本申请实施例还公开了一种电子设备,包括:处理器、存储器及存储在所述存储器上并能够在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现任一项所述服务器集群的资源分配控制方法的步骤。
本申请实施例还公开了一种计算机可读存储介质,所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现任一项所述服务器集群的资源分配控制方法的步骤。
本申请实施例还公开了一种软件产品,包括计算机程序/指令,其中,当所述计算机程序/指令被执行时,实现任一项所述服务器集群的资源分配控制方法的步骤。
本申请实施例包括以下优点:
在本申请实施例中,在服务器集群中的服务器向目标通道发送目标资源时,可以基于服务器在时间周期内针对某个目标通道所分配的请求处理数进行发送,其中,时间周期主要基于预设时间步长进行划分,且各个服务器时间周期内所分配的请求处理数是就与目标通道所限制的请求数阈值确定的,具体可以根据各个服务器的时间周期内所分配的请求处理数,向目标通道发送目标资源,在目标资源的目标请求数超过在时间周期内所分配的请求处理数的情况下,则可以根据各个服务器的在下一个时间周期内所分配的请求处理数向目标通道发送目标资源,直至向目标通道发送目标请求数的目标资源为止。通过所划分的多个时间周期所分配的请求处理数实现集群中的各个服务器周期性向通道方法资源,且在出现某个时间周期所要下发的资源超过服务器所分配的QPS的情况下,可以将超出的部分提前加到下个时间周期的QPS中,即通过基于时间周期内所对应的QPS与某个目标通道在预设时间步长内所设定的阈值,进行请求数的预留递推方式实现对发送至某个通道中流量的限制,无需在发放资源之前对缓存中的已发放请求数进行查询,在避免出现脉冲问题的情况下实现对通道资源的控制。
附图说明
图1是本申请实施例中所提供的一种服务器集群的资源分配控制方法的步骤流程图;
图2是本申请实施例中所提供的另一种服务器集群的资源分配控制方法的步骤流程图;
图3A至图3B是本申请实施例中所提供的确定预设时间步长内所分配的请求处理数的示例图;
图4是本申请实施例中所提供的具有前置偏移量的时间周期的划分示意图;
图5是本申请实施例中所提供的服务器集群的资源分配控制的应用场景图;
图6是本申请实施例中所提供的一种服务器集群的资源分配控制装置的结构框图。
具体实施方式
为使本申请的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本申请作进一步详细的说明。
在云通信领域中,系统中通信的资源能够通过通道实现传输,可以存在多个用于资源传输的通道,各个通道可以支持一定的并发处理,且各个通道可能是不一样的。其中,在通道中所传输的资源可以某些数据或信息等。
在接收到所传输的请求时,系统需要决定往哪个通道上发送此请求,这里将会存在限制某个通道所能够发送的QPS不能超过通道所具备的发送能力的情况,此时一般采用集群的模式,通过一个统一分布缓存件,例如Tair(作为一个高可用、高性能的分布式NoSQL数据库,可以使用云上托管键值对缓存服务)对集群的QPS进行限制。
具体的,在决定往哪个通道发送请求时,需要通过分布式缓存中间件保存当前通道当前时间(以秒为单位)已经发送给该通道的请求个数,且在集群中的服务器每次向此通道发送资源时,均会对用于记录发送给该通道的请求个数进行加一操作,如果在发送资源前确定该通道已满额则不再向该通道发送资源,并决定向其他未满,还能够承受资源请求处理的通道发送资源,即集群中的服务器每次在发送资源之前都需要判断所预定要发送的通道是否已满额,主要是通过查询中间件中的缓存实现对通道的判断。当所要传输的资源非常多时,由于每次发送资源前均需要查询,此时仅仅是对缓存中某个通道的QPS进行查询可能高达几万,频繁地向缓存中间件对某个通道的QPS进行查询,将会出现分布式缓存的热点问题,导致系统的性能急剧下降。
上述所提出的基于缓存中间件Tair对集群的QPS限制的方式,通过在向某个通道发送资源后对其通道对应的QPS进行加一操作,并在超过通道所能够承受的QPS(即请求数阈值)后不再向该通道发送资源的方式,并不能解决在资源大并发的情况下,使用分布式缓存判断当前通道的流量是否满额时所存在的热点问题而导致的性能急剧下降的问题。
本申请实施例的核心思想之一是将集群模式改成单机模式以避免集群控制,通过基于时间周期内所对应的QPS与某个目标通道在预设时间步长内所设定的阈值,进行请求数的预留递推方式实现对发送至某个通道中流量的限制,无需在发放资源之前对缓存中的QPS进行查询,并不存在由于频繁查询而存在的热点问题,可以在避免出现脉冲问题的情况下实现对通道资源的控制。
参照图1,示出了本申请实施例中所提供的一种服务器集群的资源分配控制方法的步骤流程图,主要侧重于对资源的发送过程,具体可以包括如下步骤:
步骤101,获取服务器集群中各个服务器在时间周期内所分配的请求处理数;
在本申请实施例中,基于缓存的集群模式无法避免产生热点而导致的性能下降问题,此时可以将基于缓存的集群模式改为单机模式,以避免集群控制,即可以通过服务器集群中的各个服务器单独向所要发送的通道发送资源, 那么在对资源进行限制时,能够通过分别对各个服务器的资源进行分配控制以完成对集群服务器集群的资源分配控制。
需要说明的是,将基于缓存的集群模式改为单机模式,并不涉及到对通信架构的改变,只是将向通道发放资源的模式和资源请求模式变为单机模式,例如原来是需要作个服务器集群去共同扛一个重物,现在是变为将重物拆成多个小物品,然后分别分担给多个服务器的模式,其中各个服务器只需要保证自身应该承担的部分重量即可。
具体的,在分别对各个服务的资源进行分配控制的过程中,可以针对所要发送至同一通信通道的各个服务器所能够处理的请求数进行分配,主要是针对某个目标通道而言,分配各个服务器所能够处理的请求处理数,以对向某个目标通道所发送的资源请求数进行控制。
在本申请的一种实施例中,可以获取服务器集群各个服务器在时间周期内所分配的请求处理数,其中,各个服务器在时间周期内所分配的请求处理数可以基于目标通道所限制的请求数阈值进行确定,且时间周期是基于预设时间步长进行划分的,以实现服务器集群中各个服务器周期性的资源发送。
步骤102,根据各个服务器的时间周期内所分配的请求处理数,向目标通道发送目标资源;
服务器集群中的各个服务器采用周期性的资源发送方式,即此时可以根据各个服务器的时间周期内所分配的请求处理数,向目标通道发送目标资源,主要可以表现为各个服务器在确定所要发送的目标通道后,可以生成资源发送请求以向目标通道进行资源发送。
在实际情况下,在向目标通道发送目标资源的过程中,首先,每台服务器需要决定是否要向所确定的目标通道下发资源。
其中,由于已经针对所要发送至同一通信通道的各个服务器所能够处理的请求数进行分配,那么在比较时无需对目标通道所限制的请求数阈值和目标通道在预设时间步长内已经发放的资源请求数进行比较,只需要针对事先发放给每个服务器针对某个通道所分配的请求处理数进行比较,即无需在发放资源之前对缓存中的QPS进行查询,即可判定所要发放资源的通道是否超过其所能够承受的请求数阈值。
具体的,主要可以通过获取针对目标通道在预设时间步长内所分配的请求处理数,以及确定针对目标通道已发送资源的总请求数,并将两者进行比较,在目标通道已发送资源的总请求数未超过在预设时间步长内所分配的请求处理数的情况下,可以向目标通道发送目标资源。
在实际应用中,当每个服务器在向目标通道发送资源之后,可以对目标通道已发送资源的总请求数进行加一操作,以记录当前服务器在针对某个通道发送资源时所消耗的请求处理数。
步骤103,若目标资源的目标请求数超过在时间周期内所分配的请求处理数,则根据各个服务器的在下一个时间周期内所分配的请求处理数向目标通道发送目标资源,直至向目标通道发送目标请求数的目标资源为止。
在本申请的一种实施例中,通过基于时间周期内所对应的QPS与某个目标通道在预设时间步长内所设定的阈值,进行请求数的预留递推方式实现对发送至某个通道中流量的限制,无需在发放资源之前对缓存中的QPS进行查询,并不存在由于频繁查询而存在的热点问题,可以在避免出现脉冲问题的情况下实现对通道资源的控制。
在发送目标资源之前需要对目标通道的请求数阈值进行判断,以判断此通道是否满额,为了提高系统的性能,前述对通道的判断与对资源的发送可以是通过异步实现的,可能会导致在查询各个服务器在针对目标通道已发送资源的总请求数前,其总请求数未超过服务器在当前时间周期内所分配的请求处理数,但在对目标通道已发送资源的总请求数进行加一操作后超过了服务器当前周期所分配的请求处理数,那么此时可以采用预先暂用的策略。
具体的,服务器集群中的各个服务器周期性对资源进行发送,此时若目标资源的目标请求数超过在时间周期内所分配的请求处理数,即在向目标通道发送目标资源的过程中,若服务器第一个时间周期内所分配的请求处理数不足以发送完整的目标资源,则所采用的预先暂用策略,可以通过服务器在下一个时间周期内所分配的请求处理数继续向目标通道发送剩余的目标资源,直至向目标通道发送完目标请求数的目标资源为止。
在实际应用中,在通过服务器在下一个时间周期内所分配的请求处理数继续发送目标资源的过程中,也同样需要对服务器针对目标通道在预设时间步长内所分配的请求处理数,以及针对目标通道已发送资源的总请求数进行比较,确保在目标通道已发送资源的总请求数未超过在预设时间步长内所分配的请求处理数的情况下对资源进行发送;以及,在根据各个服务器的在下一个时间周期内所分配的请求处理数向目标通道发送目标资源之后,基于所采用的预先暂用策略,需要将各个服务器在下一个时间周期内所分配的请求处理数减去与所发送目标资源的相应请求数,以便采用减去后的请求处理数向目标通道发送新的目标资源。
作为一种示例,在目标资源的目标请求数超过在时间周期内所分配的请求处理数的情况下,可以将超出的部分提前加到下个时间周期的QPS中,即在某个服务器针对某个通道在在时间周期内所分配的请求处理数为N时,其下一个时间周期内所分配的请求处理数将变为N-1,假设N=10,当所要发放的目标请求数为11时,在提前采用下一个时间周期内所分配的请求处理数对超出部分的资源进行处理后,下一个时间周期内所具有的请求处理数将变为9,这是一个递推的过程。
在本申请实施例中,在服务器集群中的服务器向目标通道发送目标资源时,可以基于服务器在时间周期内针对某个目标通道所分配的请求处理数进行发送,通过各个服务器的时间周期内所分配的请求处理数,向目标通道发送目标资源,在目标资源的目标请求数超过在时间周期内所分配的请求处理数的情况下,则可以根据各个服务器的在下一个时间周期内所分配的请求处理数向目标通道发送目标资源,直至向目标通道发送目标请求数的目标资源为止。通过所划分的多个时间周期所分配的请求处理数实现集群中的各个服务器周期性向通道方法资源,且在出现某个时间周期所要下发的资源超过服务器所分配的请求处理数的情况下,可以将超出的部分提前加到下个时间周期的请求处理数中,即通过基于时间周期内所对应的请求处理数与某个目标通道在预设时间步长内所设定的阈值,进行请求数的预留递推方式实现对发送至某个通道中流量的限制,无需在发放资源之前对缓存中的已发放请求数进行查询,在避免出现脉冲问题的情况下实现对通道资源的控制。
参照图2,示出了本申请实施例所提供的另一种服务器集群的资源分配控制方法的步骤流程图,主要侧重于对服务器集群的资源分配控制过程,具体可以包括如下步骤:
步骤201,获取各个通道在预设时间步长内所限制的请求数阈值,采用请求数阈值确定各个服务器在预设步长内所分配的请求处理数;
在本申请的一种实施例中,在分别对各个服务的资源进行分配控制的过程中,可以针对所要发送至同一通信通道的各个服务器所能够处理的请求数进行分配,主要是针对某个目标通道而言,分配各个服务器所能够处理的请求处理数,以对向某个目标通道所发送的资源请求数进行控制。
在具体实现中,在将基于缓存的集群模式改为单机模式的情况下,可以基于目标通道所限制的请求数阈值确定各个服务器所分配的请求处理数,且可以对各个服务器针对某个目标通道在时间步长内所分配的请求处理数进行确定,即对各个服务器在某个时间段内所分配的请求处理数进行确定,以提高对服务器集群的资源分配控制的精确性。
其中,可以获取在所述服务器集群中服务器的数量,基于各个通道所限制的请求数阈值和服务器的数量,确定各个服务器所分配的请求处理数。
作为一种示例,假设某个通道所限制的请求数阈值,即该通道总的QPS为100,服务器集群中存在100台服务器,那么每台服务器只可以分配1QPS的请求数给此通道, 使得每个服务器所加起来的总请求数不超过通道所能够承受的QPS,在通道的发送能力值较小的情况下,例如通道所限制的请求数阈值为100,但存在500台服务器,那么一台服务器只能分配到0.2QPS的请求数。需要说明的是,由于此时将基于缓存的集群模式改为单机模式,其所分配到的请求数是基于单个服务器而言的,此小数点后面的值不能忽略。
然而,将集群模式改为单机模式的同时,将原本分配给服务器集群总的请求数也相应分担给各个服务器,在原本针对集群分配的总请求数的单位很小,例如以秒为单位的情况下,若此时在分担给单机服务器时依旧采用以秒为单位的QPS分配的话,那么每个服务器所分配到的QPS很小,并不利于对资源的控制,若此时采用以分钟为单位进行分配的话,每个服务器QPS所分配到的QPS较大,有利于提高对资源控制的精准性。
具体的,可以通过延长时间步长实现,此时在预设时间步长内所限制的请求数阈值和/或所分配的请求数均增大。
此时,可以获取在所述服务器集群中服务器的数量,基于各个通道在预设时间步长内所限制的请求数阈值和服务器的数量,确定各个服务器在预设时间步长内所分配的请求处理数。
在一种情况下,当通道并发和集群中服务器数量属于倍数关系时,如图3A所示,集群中存在服务器1、服务器2、服务器3、服务器4、服务器5共5个服务器,假设通道1所能够支持10QPS的发送能力,对于集群中所存在的5个服务器,那么整个集群向此通道1发放的流量每小时不能大于10QPS,这种集群的模式可能存在由于热点问题而导致的性能瓶颈,此时可以让每个服务器向通道1发放资源时能够下发2QPS的流量,使得各个服务器所发放的资源加起来不超过通道1的请求数阈值10QPS。
在另一种情况下,当通道并发和集群中服务器数量不是倍数关系时,每个服务器所分配到的请求处理数并不是整数,如图3B所示,通道1所能够支持7QPS的发送能力,对于集群中所存在的5个服务器(即服务器1-5),此时向每个服务器分配的请求处理数为1.4QPS,此时需要对其请求处理数是取1还是取2进行确定。
在本申请的一种实施例中,在所确定的服务器在预设时间步长内所分配的请求处理数具有小数点的情况下,可以获取各个服务器的源地址和各个服务器用于发送资源的当前时间周期,基于源地址和当前时间周期得到哈希值,并采用哈希值取余数得到用于衡量是否将请求处理数向上取整的随机数。
在第一种情况下,若随机数小于请求处理数中位于小数点后的数值,则可以向上取整具有小数点的请求处理数,在概率学统计的角度,当集群中所存在的服务器数量足够多时,可以保证单机服务器所分配到的QPS的和跟原来的集群总的QPS是基本相等的,即每个服务器所分配到的QPS的和将与通道真实的QPS非常接近;在第二种情况下,若所计算得到的随机数大于小数点后的数值,则可以忽略小数点后面的数值直接去请求处理数中的整数部分。
具体的,基于源地址和当前时间周期得到哈希值(为一个随机数),其所确定的哈希值可以采用将源地址和当前时间周期在数值上进行相加或拼接操作,以保证所得到哈希值的更随机性,即基于当前时间周期和服务器源IP地址对哈希值的确定,是为了能够同时兼顾服务器网关和时间的影响,保证某个服务器和某个时间不会总是产生固定值,例如对于某个服务器所分配到的2.5,其在上个时间可能向上取整取3,在下个时间可能忽略小数点后面的数值取2;采用哈希值取余数得到随机数,主要是对所得到的哈希值除以1000取余数,由于所得到的哈希值为随机数,则其取余后的余数也为随机数,所产生的是一个随机的0到1之间的随机数。
示例性地,当某个通道的所限制的请求数阈值比较小(例如7),而集群中所存在的服务器数量较大(例如 10)时,每个服务器所分配到到的QPS阈值非常小,例如请求处理数为0.7,按照上述随机规则,有些单机服务器可能只能分配到0QPS,此时当一个流量需要发放时可能导致拒接,那么此时可以将通道的请求数阈值在向各个服务器进行分配的过程中的预设时间段设置成可变化的值,即可以将预设时间步长拉长,比如之前是按照一秒对资源的请求数进行控制,此时可以取时间步长为10s,那么在时间步长,10秒内乘以10则所得到的请求数为7,并不会存在有些服务器被分配到0QPS出现被拒接的现象。
步骤202,采用各个服务器在预设步长内所分配的请求处理数,确定各个服务器在针对不同通道的时间周期内所分配的请求处理数;
在确定某个时间段内各个服务器所分配得到的请求处理数后,为了便于后续在各个服务器向目标通道资源发送时对所分配的资源进行控制与计算,此时可以将预设时间步长,即所预先设置的时间段划分为多个时间周期,并获取各个服务器在时间周期内针对某个目标通道所分配的请求处理数,实现服务器集群中各个服务器周期性的资源发送方式。
具体的,可以基于各个服务器当前时间的秒数值对预设时间步长划分为多个时间周期,然后将各个服务器在针对不同通道的预设步长内所分配的请求处理数,按照所划分的多个时间周期的周期数进行分配,得到在针对不同通道的时间周期内所分配的请求处理数。
基于各个服务器当前时间的秒数值对预设时间步长划分为多个时间周期,其所划分得到的时间周期为基于预设时间步长进行划分的,则可以称所划分得到的时间周期为时间步数,其可以表现为时间步数=当前时间的秒数/预设时间步长。
在实际应用中,在将所分配资源请求数,即对QPS进行分配控制的过程中,将其时间步长从1秒拉长到任何值,此时可能出现目标资源所具有的所有流量都在第一秒时向目标通道进行发放,而导致后续时间步长内不具有目标资源流量的发放,此时局部的QPS是不符合预期的,这种集中在某个时间点的资源发送方式将会造成脉冲问题,且这个脉冲可能会压垮通道的发送能力。
在一种优选的实施例中,可以获取各个服务器的前置偏移量,在基于预设时间步长划分多个时间周期时,将各个服务器当前时间的秒数值叠加前置偏移量进行划分,以便基于所划分的时间周期对相应请求处理数进行分配。
具体的,参照图4,示出了本申请实施例中所提供的具有前置偏移量的时间周期的划分示意图,在将预设时间步长进行切分,以确定采用当前第几份的请求处理数进行资源发送时,可以对于每个服务器设置一个随机的前置偏移量,所设置的前置偏移量可以通过当前服务器的源IP地址得到一个随机数,进而得到一个随机时间步长前置偏移,即前置偏移量。其主要是通过当前服务器的源IP地址与时间步长的余数,得到保证小于预设时间步长的随机数,以应用在求时间步数,即划分时间周期时产生随机偏移。
需要说明的是,由于时间步长的大小一般取决于系统属性,那么每个服务器的前置偏移量是固定的,即在服务器确定时即可确定其前置偏移量;且服务器集群中不同服务器的前置偏移量可能是不同的,以保证随机平均分布。
在得到前置偏移量之后,依据统计学观点,对于每个服务器在计算时间步数时,可以在当前时间的基础上加上前置偏移量,即基于前置随机偏移处理后得到的时间步数=(当前时间+前置偏移量)/预设时间步长,使得避免产生脉冲问题。如图4所示,每个服务器的某个步数的起始时间是不一样的,即将随机得到的前置偏移量可以平均随机分配到一个时间步长里,从统计角度与前述按秒级的随机控制在统计学意义上是相等的。
步骤203,根据各个服务器在针对目标通道的时间周期内所分配的请求处理数,向目标通道周期性发送目标请求数的目标资源。
在本申请的一种实施例中,通过基于时间周期内所对应的QPS与某个目标通道在预设时间步长内所设定的阈值,进行请求数的预留递推方式实现对发送至某个通道中流量的限制,无需在发放资源之前对缓存中的QPS进行查询,并不存在由于频繁查询而存在的热点问题,可以在避免出现脉冲问题的情况下实现对通道资源的控制。
具体的,服务器集群中的各个服务器周期性对资源进行发送,此时若目标资源的目标请求数超过在时间周期内所分配的请求处理数,即在向目标通道发送目标资源的过程中,若服务器第一个时间周期内所分配的请求处理数不足以发送完整的目标资源,则所采用的预先暂用策略,可以通过服务器在下一个时间周期内所分配的请求处理数继续向目标通道发送剩余的目标资源,直至向目标通道发送完目标请求数的目标资源为止。
在实际应用中,在通过服务器在下一个时间周期内所分配的请求处理数继续发送目标资源的过程中,也同样需要对服务器针对目标通道在预设时间步长内所分配的请求处理数,以及针对目标通道已发送资源的总请求数进行比较,确保在目标通道已发送资源的总请求数未超过在预设时间步长内所分配的请求处理数的情况下对资源进行发送。
在本申请实施例中,通过所划分的多个时间周期所分配的请求处理数实现集群中的各个服务器周期性向通道方法资源,且在出现某个时间周期所要下发的资源超过服务器所分配的请求处理数的情况下,可以将超出的部分提前加到下个时间周期的请求处理数中,即通过基于时间周期内所对应的请求处理数与某个目标通道在预设时间步长内所设定的阈值,进行请求数的预留递推方式实现对发送至某个通道中流量的限制,无需在发放资源之前对缓存中的已发放请求数进行查询,在避免出现脉冲问题的情况下实现对通道资源的控制。
在本申请实施例中,通过基于时间周期内所对应的QPS与某个目标通道在预设时间步长内所设定的阈值,进行请求数的预留递推方式实现对发送至某个通道中流量的限制。
参照图5,示出了本申请实施例中所提供的服务器集群的资源分配控制的应用场景图,涉及到服务器集群501、缓存中间件502、通道503和供应商504,其中,服务器集群501还可以与数据库进行连接以对所要发送至通道的资源进行获取。
通常,通道503可以指的是一个TCP(Transmission Control Protocol,传输控制协议)连接,也可能是一个提供的HSF(High-speed Service Framework,高速服务框架)服务,在云通信领域中,以云通信短信服务智能调度为例,短信的底层可以是很多供应商的通道,即通道503为与供应商504的连接,而供应商504可以为集群中的服务器提供短信的相关服务。
在短信服务的场景中,可以将集群模式改成单机模式以避免集群控制,主要在服务器集群501中的各个服务器在发送短信相关资源时,确定能够发送至供应商504的短信资源的通道503,此时可以确定各个通道所能够承受的资源请求数阈值,进而可以计算出服务器集群501中各个服务器在所设置的时间步长内所能够分配到的请求数,即针对所要发放至同一通信通道的各个服务器确定其所能够分配的请求数。
此时,可以对时间步长划分为多个具有前置偏移量的时间周期(即具有前置随机偏移的时间步数),进而通过各个服务器周期性向某个确定的短信资源相关通道发放资源,若出现某个时间步数(即周期)下发的资源超过其通道的请求数阈值的情况,可以可以将超出的部分提前加到下个时间周期的QPS中,即通过基于时间周期内所对应的QPS与某个目标通道在预设时间步长内所设定的阈值,进行请求数的预留递推方式实现对发送至某个通道中流量的限制。
在一种优选的实施例中,在服务器集群501和用于连接至供应商504的通道503之间,可以存在缓冲区,在集群中每个服务器在向通道发放资源流量的过程中,可以先将所要发放的资源流量放至于缓冲区,此缓冲区可以与某个通道进行对应,即每个通道都具有缓冲区,此时可以通过缓冲区去保证此通道是否满额,但对于递推过程中对阈值的判定是通过事先所发放给每台单机的阈值进行判定的。
需要说明的是,本申请实施例所提供的服务器集群的资源分配控制方法还可以应用到其他云通信产品中,对此,本申请实施例不加以限制。
在本申请实施例中,通过将机器模式改为单机模式以避免集群控制的情况下,通过秒控制改为按预设时间步长的请求数分配控制,解决单秒单个服务器分配的QPS控制阈值太低的问题,在计算时间步数时引入前置偏移量以避免在延长时间步长后出现的脉冲问题;且在计算某个服务器某个通道所分配到的当前时间步数的阈值时,对于小数点后数值的影响,通过当前服务器和当前时间步数并取余数得到0到1之间的随机值,如果这个随机数小于小数点后的数值则将当前通道所分配到服务器的请求处理数阈值取整数部分加一,否则只取整数部分;以及,对于某些情况,例如在某个时间步数里如果实际下发给某个通道的资源大于所分配给服务器当前时间步数的请求处理数时,可以向下一个时间步数进行“借款”,此时下个时间步数所能够发送的请求数将会等于原本所分配到的请求数阈值减去之前被上一时间步数借走的请求数,即进行请求数的预留递推方式实现对发送至某个通道中流量的限制,无需在发放资源之前对缓存中的QPS进行查询,并不存在由于频繁查询而存在的热点问题,可以在避免出现脉冲问题的情况下实现对通道资源的控制。
需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请实施例并不受所描述的动作顺序的限制,因为依据本申请实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本申请实施例所必须的。
参照图6,示出了本申请实施例中所提供的一种服务器集群的资源分配控制装置的结构框图,具体可以包括如下模块:
请求处理数获取模块601,用于获取服务器集群中各个服务器在时间周期内所分配的请求处理数;所述时间周期基于预设时间步长划分,所述各个服务器在时间周期内所分配的请求处理数基于目标通道所限制的请求数阈值确定;
第一资源发送模块602,用于根据各个服务器的时间周期内所分配的请求处理数,向目标通道发送目标资源;
第二资源发送模块603,用于在目标资源的目标请求数超过在时间周期内所分配的请求处理数时,根据各个服务器的在下一个时间周期内所分配的请求处理数向目标通道发送目标资源,直至向目标通道发送目标请求数的目标资源为止。
在本申请的一种实施例中,所述各个服务器在时间周期内所分配的请求处理数包括针对不同通道所分配的请求处理数;请求处理数获取模块601可以包括如下子模块:
第一请求处理数确定子模块,用于获取各个通道在预设时间步长内所限制的请求数阈值,采用所述请求数阈值确定各个服务器在预设步长内所分配的请求处理数;
第二请求处理数确定子模块,用于采用所述各个服务器在预设步长内所分配的请求处理数,确定各个服务器在针对不同通道的时间周期内所分配的请求处理数。
在本申请的一种实施例中,第一请求处理数确定子模块可以包括如下单元:
第一请求处理数确定单元,用于获取在所述服务器集群中服务器的数量,基于各个通道在预设时间步长内所限制的请求数阈值和服务器的数量,确定各个服务器在预设时间步长内所分配的请求处理数。
在本申请的一种实施例中,所述请求处理数具有小数点;第一请求处理数确定单元可以包括如下子单元:
随机数生成子单元,用于获取各个服务器的源地址和各个服务器用于发送资源的当前时间周期,基于所述源地址和所述当前时间周期得到哈希值,并采用所述哈希值取余数得到用于衡量是否将所述请求处理数向上取整的随机数;
第一请求处理数确定子单元,用于在所述随机数小于所述请求处理数中位于小数点后的数值的情况下,向上取整所述具有小数点的请求处理数。
在本申请的一种实施例中,第二请求处理数确定子模块可以包括如下单元:
时间周期划分单元,用于基于各个服务器当前时间的秒数值对预设时间步长划分为多个时间周期;
请求处理数分配单元,用于将所述各个服务器在针对不同通道的预设步长内所分配的请求处理数,按照所划分的多个时间周期的周期数进行分配,得到在针对不同通道的时间周期内所分配的请求处理数。
在本申请的一种实施例中,时间周期划分单元可以包括如下子单元:
时间周期划分子单元,用于获取各个服务器的前置偏移量,在基于预设时间步长划分多个时间周期时,将所述各个服务器当前时间的秒数值叠加所述前置偏移量进行划分,以便基于所划分的时间周期对相应请求处理数进行分配。
在本申请的一种实施例中,第一资源发送模块502和第二资源发送模块503可以包括如下子模块:
已发送请求数确定子模块,用于获取针对所述目标通道在预设时间步长内所分配的请求处理数,以及确定针对所述目标通道已发送资源的总请求数;
资源发送子模块,用于在所述目标通道已发送资源的总请求数未超过在预设时间步长内所分配的请求处理数的情况下,向目标通道发送目标资源。
在本申请的一种实施例中,在所述根据各个服务器的在下一个时间周期内所分配的请求处理数向目标通道发送目标资源之后,所述装置还可以包括如下模块:
请求数处理模块,用于将所述各个服务器在下一个时间周期内所分配的请求处理数减去与所发送目标资源的相应请求数,以便采用减去后的请求处理数向目标通道发送新的目标资源。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本申请实施例还提供了一种电子设备,包括:
包括处理器、存储器及存储在所述存储器上并能够在所述处理器上运行的计算机程序,该计算机程序被处理器执行时实现上述服务器集群的资源分配控制方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
本申请实施例还提供了一种计算机可读存储介质,计算机可读存储介质上存储计算机程序,计算机程序被处理器执行时实现上述服务器集群的资源分配控制方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
本申请实施例还提供了一种软件产品,包括计算机程序/指令,其中,当所述计算机程序/指令被执行时实现上述服务器集群的资源分配控制方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
本说明书中的各个实施例均采用递进的方式描述,各个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本领域内的技术人员应明白,本申请实施例的实施例可提供为方法、装置、或计算机程序产品。因此,本申请实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请实施例是参照根据本申请实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本申请实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请实施例范围的所有变更和修改。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。
以上对本申请所提供的一种服务器集群的资源分配控制方法和一种服务器集群的资源分配控制装置,进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
Claims (11)
1.一种服务器集群的资源分配控制方法,其特征在于,所述方法包括:
获取服务器集群中各个服务器在时间周期内所分配的请求处理数;所述时间周期基于预设时间步长划分,所述各个服务器在时间周期内所分配的请求处理数基于目标通道所限制的请求数阈值确定;其中,所述各个服务器在时间周期内所分配的请求处理数包括针对不同通道在时间周期内所分配的请求处理数;
根据各个服务器的时间周期内所分配的请求处理数,向目标通道发送目标资源;
若目标资源的目标请求数超过在时间周期内所分配的请求处理数,则预先根据各个服务器的在下一个时间周期内所分配的请求处理数向目标通道发送目标资源,直至向目标通道发送目标请求数的目标资源为止。
2.根据权利要求1所述的方法,其特征在于,所述获取服务器集群中各个服务器在时间周期内所分配的请求处理数,包括:
获取各个通道在预设时间步长内所限制的请求数阈值,采用所述请求数阈值确定各个服务器在预设步长内所分配的请求处理数;
采用所述各个服务器在预设步长内所分配的请求处理数,确定各个服务器在针对不同通道的时间周期内所分配的请求处理数。
3.根据权利要求2所述的方法,其特征在于,所述采用所述请求数阈值确定各个服务器在预设步长内所分配的请求处理数,包括:
获取在所述服务器集群中服务器的数量,基于各个通道在预设时间步长内所限制的请求数阈值和服务器的数量,确定各个服务器在预设时间步长内所分配的请求处理数。
4.根据权利要求2或3所述的方法,其特征在于,所述请求处理数具有小数点;所述确定各个服务器在预设步长内所分配的请求处理数,包括:
获取各个服务器的源地址和各个服务器用于发送资源的当前时间周期,基于所述源地址和所述当前时间周期得到哈希值,并采用所述哈希值取余数得到用于衡量是否将所述请求处理数向上取整的随机数;
若所述随机数小于所述请求处理数中位于小数点后的数值,则向上取整所述具有小数点的请求处理数。
5.根据权利要求2所述的方法,其特征在于,所述采用所述各个服务器在预设步长内所分配的请求处理数,确定各个服务器在针对不同通道的时间周期内所分配的请求处理数,包括:
基于各个服务器当前时间的秒数值对预设时间步长划分为多个时间周期;
将所述各个服务器在针对不同通道的预设步长内所分配的请求处理数,按照所划分的多个时间周期的周期数进行分配,得到在针对不同通道的时间周期内所分配的请求处理数。
6.根据权利要求2或5所述的方法,其特征在于,所述确定各个服务器在针对不同通道的时间周期内所分配的请求处理数,包括:
获取各个服务器的前置偏移量,在基于预设时间步长划分多个时间周期时,将所述各个服务器当前时间的秒数值叠加所述前置偏移量进行划分,以便基于所划分的时间周期对相应请求处理数进行分配。
7.根据权利要求1所述的方法,其特征在于,根据各个服务器的时间周期内所分配的请求处理数向目标通道发送目标资源,包括:
获取针对所述目标通道在预设时间步长内所分配的请求处理数,以及确定针对所述目标通道已发送资源的总请求数;
在所述目标通道已发送资源的总请求数未超过在预设时间步长内所分配的请求处理数的情况下,向目标通道发送目标资源。
8.根据权利要求1或7所述的方法,其特征在于,在所述根据各个服务器的在下一个时间周期内所分配的请求处理数向目标通道发送目标资源之后,还包括:
将所述各个服务器在下一个时间周期内所分配的请求处理数减去与所发送目标资源的相应请求数,以便采用减去后的请求处理数向目标通道发送新的目标资源。
9.一种服务器集群的资源分配控制装置,其特征在于,所述装置包括:
请求处理数获取模块,用于获取服务器集群中各个服务器在时间周期内所分配的请求处理数;所述时间周期基于预设时间步长划分,所述各个服务器在时间周期内所分配的请求处理数基于目标通道所限制的请求数阈值确定;其中,所述各个服务器在时间周期内所分配的请求处理数包括针对不同通道在时间周期内所分配的请求处理数;
第一资源发送模块,用于根据各个服务器的时间周期内所分配的请求处理数,向目标通道发送目标资源;
第二资源发送模块,用于在目标资源的目标请求数超过在时间周期内所分配的请求处理数时,预先根据各个服务器的在下一个时间周期内所分配的请求处理数向目标通道发送目标资源,直至向目标通道发送目标请求数的目标资源为止。
10.一种电子设备,其特征在于,包括:处理器、存储器及存储在所述存储器上并能够在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如权利要求1-8中任一项所述服务器集群的资源分配控制方法的步骤。
11.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现如权利要求1至8中任一项所述服务器集群的资源分配控制方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111195201.8A CN113641505B (zh) | 2021-10-14 | 2021-10-14 | 一种服务器集群的资源分配控制方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111195201.8A CN113641505B (zh) | 2021-10-14 | 2021-10-14 | 一种服务器集群的资源分配控制方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113641505A CN113641505A (zh) | 2021-11-12 |
CN113641505B true CN113641505B (zh) | 2022-01-04 |
Family
ID=78426760
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111195201.8A Active CN113641505B (zh) | 2021-10-14 | 2021-10-14 | 一种服务器集群的资源分配控制方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113641505B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114866556B (zh) * | 2022-05-25 | 2024-04-19 | 上海众源网络有限公司 | 一种服务器资源请求方法、装置、电子设备及存储介质 |
CN117453380B (zh) * | 2023-12-25 | 2024-02-23 | 阿里云计算有限公司 | 集群的容器组调度方法、系统以及计算机设备 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112600877A (zh) * | 2020-11-27 | 2021-04-02 | 互联网域名系统北京市工程研究中心有限公司 | Dns服务器的分布式限速方法和系统 |
CN113242184A (zh) * | 2021-06-10 | 2021-08-10 | 京东科技控股股份有限公司 | 分布式架构的流量控制方法及相关设备 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109005125B (zh) * | 2018-08-24 | 2022-05-10 | 创新先进技术有限公司 | 动态限流方法、装置及系统 |
CN110032447B (zh) * | 2019-04-11 | 2022-02-22 | 北京百度网讯科技有限公司 | 用于分配资源的方法和装置 |
CN111343288B (zh) * | 2020-05-21 | 2020-09-01 | 北京并行科技股份有限公司 | 作业调度方法、系统及计算设备 |
CN113485831A (zh) * | 2021-07-05 | 2021-10-08 | 北京猿力未来科技有限公司 | 一种业务限流方法、计算设备及存储介质 |
-
2021
- 2021-10-14 CN CN202111195201.8A patent/CN113641505B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112600877A (zh) * | 2020-11-27 | 2021-04-02 | 互联网域名系统北京市工程研究中心有限公司 | Dns服务器的分布式限速方法和系统 |
CN113242184A (zh) * | 2021-06-10 | 2021-08-10 | 京东科技控股股份有限公司 | 分布式架构的流量控制方法及相关设备 |
Also Published As
Publication number | Publication date |
---|---|
CN113641505A (zh) | 2021-11-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113641505B (zh) | 一种服务器集群的资源分配控制方法和装置 | |
CN109327550B (zh) | 一种访问请求的分配方法、装置、存储介质和计算机设备 | |
CN110858161B (zh) | 资源分配方法、装置、系统、设备和介质 | |
CN101540775B (zh) | 内容分发方法、装置与内容分发网络系统 | |
CN108173774B (zh) | 一种客户端的升级方法及系统 | |
EP3296870A1 (en) | Cdn-based content management system | |
WO2015096681A1 (zh) | 一种业务访问处理方法及装置 | |
US20210037111A1 (en) | Access log processing method and device | |
CN106375471B (zh) | 一种边缘节点确定方法及装置 | |
CN107105013B (zh) | 文件的处理方法、服务器、终端和系统 | |
CN104243405A (zh) | 一种请求处理方法、装置及系统 | |
CN109672711B (zh) | 一种基于反向代理服务器Nginx的http请求处理方法及系统 | |
JPWO2018220708A1 (ja) | 資源割当システム、管理装置、方法およびプログラム | |
CN105468305A (zh) | 一种数据缓存方法、装置和系统 | |
CN110244901B (zh) | 任务分配方法及装置、分布式存储系统 | |
CN111858055A (zh) | 任务处理方法、服务器及存储介质 | |
US8725868B2 (en) | Interactive service management | |
CN110740293A (zh) | 一种数据传输方法、系统、装置及计算机存储介质 | |
CN102970349B (zh) | 一种dht网络的存储负载均衡方法 | |
CN103248636A (zh) | 离线下载的系统及方法 | |
WO2021073405A1 (zh) | 数据分发方法、电子设备及存储介质 | |
CN113676514A (zh) | 一种文件回源方法及装置 | |
CN106790354B (zh) | 一种防数据拥堵的通信方法及其装置 | |
KR20170014804A (ko) | 클라우드 서비스를 위한 가상 머신 프로비저닝 시스템 및 방법 | |
CN109688421B (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 | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40062668 Country of ref document: HK |