【技术实现步骤摘要】
流量控制方法、装置及设备
本专利技术涉及网络技术和存储
,特别涉及一种流量控制方法、装置及设备。
技术介绍
在分布式系统中,一个用户可以同时通过不同的节点访问网络资源,不同的用户也可以通过相同的节点访问网络资源,而网络资源对用户发送的请求的处理能力有限,因此,需要对用户的访问流量进行控制。由于用户是通过节点访问网络资源的,因此,可以在节点上为每个接入的用户设置一个限速器,该限速器用于对该用户在该节点的访问流量进行控制。当用户同时接入多个节点时,还需要在节点中为设置全局协调器来协调该用户的各个限速器的工作,以保证用户在所有节点的总流量不会超标。一个全局协调器管理一个用户的所有节点上的限速器。在进行流量控制时,限速器为用户设置一个令牌桶,该令牌桶以一定速度生成令牌,节点在获取到令牌后对用户发出的请求进行处理,因此,限速器可以通过控制令牌生成速度来控制对请求的处理速度,达到控制流量的目的。具体地,全局协调器可以获取为用户设置的流控目标和每个节点上该用户的性能参数,根据流控目标和各个性能参数分别计算出每个节点的令牌生成速度,将各个节点的令牌生成速度分别发送给对应的节点,以便各个节点根据接收到的令牌生成速度控制流量。其中,流控目标是用户在接入的所有节点上的最大令牌生成速度之和;性能参数包括节点的令牌生成速度、令牌消耗速度、请求队列的队列深度以及该节点的历史数据等。现有技术中至少存在以下缺陷:令牌生成速度较大的节点处理的请求通常较多,使得该节点的负载较重,导致各个节点间的负载不均衡。
技术实现思路
为了解决令牌生成速度较大的节点处理的请求通常较多,使得该节点的负载较 ...
【技术保护点】
一种流量控制方法,其特征在于,所述方法包括:获取第i‑1个令牌生成速度和第i‑1个总令牌消耗速度,所述令牌生成速度是为对象所接入的节点设置的令牌的生成速度且所述对象所接入的所有节点在同一时刻的令牌生成速度相同,所述总令牌消耗速度是所述对象所接入的所有节点在处理所述对象发送的请求时所消耗令牌的速度之和,i≥2,并且i为自然数;根据所述第i‑1个令牌生成速度、所述第i‑1个总令牌消耗速度和预设的流控目标确定第i个调整区间,根据所述第i个调整区间生成第i个令牌生成速度;将所述第i个令牌生成速度发送给所述对象所接入的各个节点,以便所述对象所接入的各个节点将所述第i‑1个令牌生成速度更新为所述第i个令牌生成速度,根据所述第i个令牌生成速度进行流量控制。
【技术特征摘要】
1.一种流量控制方法,其特征在于,所述方法包括:获取第i-1个令牌生成速度和第i-1个总令牌消耗速度,所述令牌生成速度是为对象所接入的节点设置的令牌的生成速度且所述对象所接入的所有节点在同一时刻的令牌生成速度相同,所述总令牌消耗速度是所述对象所接入的所有节点在处理所述对象发送的请求时所消耗令牌的速度之和,i≥2,并且i为自然数;根据所述第i-1个令牌生成速度、所述第i-1个总令牌消耗速度和预设的流控目标确定第i个调整区间,根据所述第i个调整区间生成第i个令牌生成速度;将所述第i个令牌生成速度发送给所述对象所接入的各个节点,以便所述对象所接入的各个节点将所述第i-1个令牌生成速度更新为所述第i个令牌生成速度,根据所述第i个令牌生成速度进行流量控制。2.根据权利要求1所述的方法,其特征在于,所述根据所述第i-1个令牌生成速度、所述第i-1个总令牌消耗速度和预设的流控目标确定第i个调整区间,根据所述第i个调整区间生成第i个令牌生成速度,包括:将所述第i-1个总令牌消耗速度减去所述流控目标得到第i-1个差值,将所述第i-1个差值除以所述流控目标得到第i-1个比值,比较所述第i-1个比值与预设的变化阈值;若所述第i-1个比值的绝对值大于所述变化阈值且所述第i-1个比值为正,则根据所述第i-1个令牌生成速度确定所述第i个调整区间,生成所述第i个令牌生成速度。3.根据权利要求2所述的方法,其特征在于,所述比较所述第i-1个比值与预设的变化阈值之后,还包括:若所述第i-1个比值的绝对值大于所述变化阈值且所述第i-1个比值为负,则将所述第i个令牌生成速度的数值设置成为所述对象所接入的节点配置的最大令牌生成速度的数值;若所述第i-1个比值的绝对值小于所述变化阈值,则将所述第i个令牌生成速度的数值设置成所述第i-1个令牌生成速度的数值。4.根据权利要求2所述的方法,其特征在于,所述根据所述第i-1个令牌生成速度确定所述第i个调整区间,生成所述第i个令牌生成速度,包括:将为所述对象所接入的节点配置的最小令牌生成速度的数值确定为所述第i个调整区间的最小值,将所述第i-1个令牌生成速度的数值确定为所述第i个调整区间的最大值;将从所述第i个调整区间中任意选择的一个数值设置为所述第i个令牌生成速度的数值。5.根据权利要求4所述的方法,其特征在于,所述将所述第i个令牌生成速度发送给所述对象所接入的各个节点之后,还包括:获取所述第i个令牌生成速度和第i个总令牌消耗速度;将所述第i个总令牌消耗速度减去所述流控目标得到第i个差值,将所述第i个差值除以所述流控目标得到第i个比值,比较所述第i个比值与所述变化阈值;若所述第i个比值的绝对值大于所述变化阈值且所述第i个比值为正,则将所述第i个调整区间的最小值确定为第i+1个调整区间的最小值,将所述第i个令牌生成速度的数值确定为所述第i+1个调整区间的最大值;若所述第i个比值大于所述变化阈值且所述第i个比值为负,则将所述第i个令牌生成速度的数值确定为第i+1个调整区间的最小值,将所述第i个调整区间的最大值确定为所述第i+1个调整区间的最大值;将从所述第i+1个调整区间中任意选择的一个数值设置为第i+1个令牌生成速度的数值;将所述第i+1个令牌生成速度发送给所述对象所接入的各个节点,以便所述对象所接入的各个节点将所述第i个令牌生成速度更新为所述第i+1个令牌生成速度,根据所述第i+1个令牌数生成速度进行流量控制。6.根据权利要求1至5任一项所述的方法,其特征在于,所述获取第i-1个令牌生成速度和第i-1个总令牌消耗速度之前,还包括:根据所述流控目标设置所述对象所接入的节点的最小令牌生成速度和最大令牌生成速度;将所述最小令牌生成速度的数值确定为第i-1个调整区间的最小值,将所述最大令牌生成速度的数值确定为所述第i-1个调整区间的最大值;将从所述第i-1个调整区间中任意选择的一个数值设置为所述第i-1个令牌生成速度的数值;将所述第i-1个令牌生成速度发送给所述对象所接入的各个节点,以便所述对象所接入的各个节点根据所述第i-1个令牌生成速度进行流量控制。7.一种流量控制装置,其特征在于,所述装置包括:第一获取模块,用于获取第i-1个令牌生成速度和第i-1个总令牌消耗速度,所述令牌生成速度是为对象所接入的节点设置的令牌的生成速度且所述对象所接入的所有节点在同一时刻的令牌生成速度相同,所述总令牌消耗速度是...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。