一种应用于服务器的流量控制方法以及相关装置制造方法及图纸

技术编号:27464901 阅读:15 留言:0更新日期:2021-03-02 17:26
本申请公开了一种应用于服务器的流量控制方法以及相关装置,通过确定预设时间段内的服务请求的数量TPS峰值,并根据所述TPS峰值设定限流触发的阈值,即当下一时刻的TPS数值的大小关系满足限流条件时,进行限流,实现了按照服务器实际处理能力进行流控的过程,在限流期间根据预设条件对流量进行动态分配,即使同类服务部署在不同计算能力的容器或者虚拟机中,进一步的,以控制所述服务器的并发量满足预设条件,既启到了限流的作用,又为限流控制提供了量化手段,提高了限流判断的准确定,保证了服务器的稳定运行。证了服务器的稳定运行。证了服务器的稳定运行。

【技术实现步骤摘要】
一种应用于服务器的流量控制方法以及相关装置


[0001]本申请涉及计算机
,尤其涉及一种应用于服务器的流量控制方法以及相关装置。

技术介绍

[0002]随着分布式服务架构、微服务架构等技术的应用,以及容器化和云等计算能力动态规划技术的应用,服务调用链路日益增长,全链路累计耗时与压测数据偏差随之增大,需要对服务器处理过程中的流量进行管控,以保证服务器的正常运行。
[0003]一般可以采用分流和限流的方法,其中,分流方法包括轮询、随机、地址Hash、加权最小活跃数等,前三种算法都是静态分流算法,加权最小活跃数算法则实现了响应时间越小的实例可以获得更多请求的效果,进一步的,还可以采用限流的方法,即计数器、漏斗、令牌桶等算法对流量进行进一步的限制。
[0004]但是由于服务器物理处理能力的波动,静态限流方案可能会由于全链路累计耗时与压测数据偏差的增大影响到服务器的正常运行,即静态的限流阈值可能由于服务器处理能力的改变而无法准确的模拟当前触发限流的条件,影响限流触发的准确性,进一步的影响服务器运行过程的稳定性。

技术实现思路

[0005]有鉴于此,本申请第一方面提供一种应用于服务器的流量控制方法,可应用于流量控制系统或程序过程中,具体包括:确定预设时间段内服务器每秒处理的服务请求的数量(transactions per second,TPS)峰值,所述TPS峰值出现在第一时刻,所述服务请求的数量用于指示流量的大小;
[0006]若第二时刻的TPS数值满足限流条件,则获取限流信息,所述限流信息用于指示减少所述服务请求的处理,所述限流条件基于所述TPS峰值与所述第二时刻的TPS数值的大小关系设定;
[0007]获取所述TPS峰值对应的第一响应时间以及所述第二时刻的TPS数值对应的第二响应时间;
[0008]根据所述限流信息分配所述服务请求,以控制所述服务器的并发量满足预设条件,所述预设条件包括限流参数小于预设阈值,所述限流参数基于所述第一响应时间与所述第二响应时间的比例关系确定。
[0009]本申请第二方面提供另一种应用于服务器的流量控制装置,包括:
[0010]确定单元,用于确定预设时间段内服务器每秒处理的服务请求的数量TPS峰值,所述TPS峰值出现在第一时刻,所述服务请求的数量用于指示流量的大小;
[0011]限流单元,用于若第二时刻的TPS数值满足限流条件,则获取限流信息,所述限流信息用于指示减少所述服务请求的处理,所述限流条件基于所述TPS峰值与所述第二时刻的TPS数值的大小关系设定;
[0012]获取单元,用于获取所述TPS峰值对应的第一响应时间以及所述第二时刻的TPS数值对应的第二响应时间;
[0013]分配单元,用于根据所述限流信息分配所述服务请求,以控制所述服务器的并发量满足预设条件,所述预设条件包括限流参数小于预设阈值,所述限流参数基于所述第一响应时间与所述第二响应时间的比例关系确定。
[0014]在本申请一些可能的实现方式中,所述第二响应时间用于指示所述服务器同时处理多个服务实例时的平均响应时间,
[0015]所述分配单元,具体用于确定所述服务器分别处理所述多个服务实例的时间信息;
[0016]所述分配单元,具体用于根据所述时间信息确定分配规则,所述分配规则基于所述多个服务实例的时间信息之间的比例确定;
[0017]所述分配单元,具体用于根据所述分配规则分配所述服务请求,以控制所述服务器的并发量满足预设条件。
[0018]在本申请一些可能的实现方式中,所述分配单元,具体用于根据所述时间信息按照预设次序进行排列,生成服务请求分配次序;
[0019]所述分配单元,具体用于根据所述服务请求分配次序确定所述分配规则;
[0020]所述分配单元,具体用于按照所述服务请求分配次序依次对所述多个服务实例进行所述服务请求的分配,以使得所述多个服务实例达到流量阈值,所述流量阈值基于所述分配规则设定;
[0021]所述分配单元,具体用于若所述服务器的并发量满足预设条件,则停止所述服务请求的分配。
[0022]在本申请一些可能的实现方式中,所述分配单元,具体用于获取所述多个服务实例的分类信息;
[0023]所述分配单元,具体用于根据所述分类信息分别确定不同类别中服务实例的平均响应时间;
[0024]所述分配单元,具体用于根据所述不同类别中服务实例的平均响应时间确定所述多个服务实例的时间信息。
[0025]在本申请一些可能的实现方式中,其特征在于,所述确定单元,具体用于获取预设时间段内所述服务器的并发量的变化曲线;
[0026]所述确定单元,具体用于根据所述变化曲线确定所述服务器的服务时间段,所述服务时间段用于指示所述服务器的并发量达到服务阈值;
[0027]所述确定单元,具体用于确定所述服务时间段内不同时刻的并发量对应的响应时间,以计算得到TPS数值集合;
[0028]所述确定单元,具体用于在所述TPS数值集合中确定所述TPS峰值。
[0029]在本申请一些可能的实现方式中,所述分配单元,还用于若第三时刻的第三响应时间小于所述第一响应时间,则获取解除限流信息;
[0030]所述分配单元,还用于根据所述解除限流信息解除对所述服务器并发量的控制,以使得所述服务器按照额定并发量处理所述服务请求。
[0031]在本申请一些可能的实现方式中,所述分配单元,还用于根据所述解除限流信息
解除对所述服务器并发量的控制;
[0032]所述分配单元,还用于确定所述第一时刻对于所述服务请求的分配信息;
[0033]所述分配单元,还用于根据所述分配信息更新分配次序,以使得所述服务器按照额定并发量处理所述服务请求。
[0034]本申请第三方面提供一种计算机设备,包括:存储器、处理器以及总线系统;所述存储器用于存储程序代码;所述处理器用于根据所述程序代码中的指令执行上述第一方面或第一方面任一项所述的应用于服务器的流量控制的方法。
[0035]本申请第四方面提供一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述第一方面或第一方面任一项所述的应用于服务器的流量控制的方法。
[0036]从以上技术方案可以看出,本申请实施例具有以下优点:
[0037]通过确定预设时间段内的TPS峰值,并根据所述TPS峰值限流触发的阈值,即当下一时刻的TPS数值的大小关系满足限流条件时,进行限流,实现了按照服务器实际处理能力进行流控的过程,然后根据预设条件对流量进行动态分配,即使同类服务部署在不同计算能力的容器或者虚拟机中,进一步的,以控制所述服务器的并发量满足预设条件,既启到了限流的作用,又为限流控制提供了量化手段,提高了限流判断的准确定,保证了服务器的稳定运行。
附图说明
[0038]为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种流量控制方法,其特征在于,包括:确定预设时间段内服务器每秒处理的服务请求的数量TPS峰值,所述TPS峰值出现在第一时刻,所述服务请求的数量用于指示流量的大小;若第二时刻的TPS数值满足限流条件,则获取限流信息,所述限流信息用于指示减少所述服务请求的处理,所述限流条件基于所述TPS峰值与所述第二时刻的TPS数值的大小关系设定;获取所述TPS峰值对应的第一响应时间以及所述第二时刻的TPS数值对应的第二响应时间;根据所述限流信息分配所述服务请求,以控制所述服务器的并发量满足预设条件,所述预设条件包括限流参数小于预设阈值,所述限流参数基于所述第一响应时间与所述第二响应时间的比例关系确定。2.根据权利要求1所述的方法,其特征在于,所述第二响应时间用于指示所述服务器同时处理多个服务实例时的平均响应时间,所述根据所述限流信息分配所述服务请求,以控制所述服务器的并发量满足预设条件,包括:确定所述服务器分别处理所述多个服务实例的时间信息;根据所述时间信息确定分配规则,所述分配规则基于所述多个服务实例的时间信息之间的比例确定;根据所述分配规则分配所述服务请求,以控制所述服务器的并发量满足预设条件。3.根据权利要求2所述的方法,其特征在于,所述根据所述时间信息确定分配规则,包括:根据所述时间信息按照预设次序进行排列,生成服务请求分配次序;根据所述服务请求分配次序确定所述分配规则;所述根据所述分配规则分配所述服务请求,以控制所述服务器的并发量满足预设条件,包括:按照所述服务请求分配次序依次对所述多个服务实例进行所述服务请求的分配,以使得所述多个服务实例达到流量阈值,所述流量阈值基于所述分配规则设定;若所述服务器的并发量满足预设条件,则停止所述服务请求的分配。4.根据权利要求2所述的方法,其特征在于,所述确定所述服务器分别处理所述多个服务实例的时间信息,包括:获取所述多个服务实例的分类信息;根据所述分类信息分别确定不同类别中服务实例的平均响应时间;根据所述不同类别中服务实例的平均响应时间确定所述多个服务实例的时间信息。5.根据权利要求1-4任一项所述的方法,其特征在于,所述确定预设时间段内服务器每秒处理的服务请求的数量TPS峰值,包括:获取预设时间段内所述服务器的并发量的变化曲...

【专利技术属性】
技术研发人员:李欣
申请(专利权)人:腾讯科技深圳有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1