CN114257550B - 接口访问流量的自动控制方法、装置、存储介质及服务器 - Google Patents

接口访问流量的自动控制方法、装置、存储介质及服务器 Download PDF

Info

Publication number
CN114257550B
CN114257550B CN202111660559.3A CN202111660559A CN114257550B CN 114257550 B CN114257550 B CN 114257550B CN 202111660559 A CN202111660559 A CN 202111660559A CN 114257550 B CN114257550 B CN 114257550B
Authority
CN
China
Prior art keywords
current limiting
token
interface
flow
active interface
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
Application number
CN202111660559.3A
Other languages
English (en)
Other versions
CN114257550A (zh
Inventor
缪敏杰
曾健豪
黄新威
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Guangzhou Lingshiji Information Technology Co ltd
Original Assignee
Guangzhou Lingshiji Information Technology Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Guangzhou Lingshiji Information Technology Co ltd filed Critical Guangzhou Lingshiji Information Technology Co ltd
Priority to CN202111660559.3A priority Critical patent/CN114257550B/zh
Publication of CN114257550A publication Critical patent/CN114257550A/zh
Application granted granted Critical
Publication of CN114257550B publication Critical patent/CN114257550B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/20Traffic policing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/12Avoiding congestion; Recovering from congestion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/215Flow control; Congestion control using token-bucket

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Transfer Between Computers (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明公开了一种接口访问流量的自动控制方法、装置、存储介质及服务器;其中,所述方法包括:获得活动接口,基于所述活动接口的活动划分业务参数设置限流关键字;获得所述限流关键字对应的限流策略,基于对应的限流策略对所述活动接口进行限流配置;将限流配置后的活动接口基于redis存储结构进行存储;基于预设限流算法对存储在redis存储结构中的限流配置后的活动接口按照预设流量速度进行访问处理。在本发明实施例中,通过对接口的限流,保证部分能正常参与活动的同时又保护系统不被压垮,并且配置的方便简易,可以大大提运营效率,可以快速响应的运营的需求变化。

Description

接口访问流量的自动控制方法、装置、存储介质及服务器
技术领域
本发明涉及互联网服务技术领域,尤其涉及一种接口访问流量的自动控制方法、装置、存储介质及服务器。
背景技术
在当今的互联网中服务中,为了能够吸引更多的客流量,平台会不定时的推出一些秒杀,抢购等的活动,这种活动存在奖品库存小,优惠力度大,参与人数多的特点,相对于应用系统来说就是在短时间内会产生极大的访问量,导致系统的压力剧增,为了保证良好的用户体验,系统肯定不能因此而宕机,但同时也不可能无限满足访问量的大小,需要找到用户服务体验和系统成本的平衡点。
市面上现有的技术方案大多数是采用网络层面的限流来限制接口的访问流量,又或者是通过提升系统的配置,引入一些更高级中间件,从而达到提高接口的吞吐量的目的,从而保证用户体验;而现有技术存在一些问题:配置繁琐,首先配置需要专业的网络运维人员,先由开发提供接口地址和限流策略,提工单交由运维处理;限流控制的粒度太粗,网络层面只能配置到接口地址的层面,但是各种活动往往用的是同一套接口服务,但是每个活动对于访问量控制的需求又不尽相同,这时候就无法满足运营的需求;通过提升系统性能来解决访问量大的问题,诚然这是根本的解决办法,但是这将会提高系统的维护成本,比如数据库资源就比较昂贵,而秒杀等活动并不是时时刻刻在进行,而且秒杀类活动的奖品库存都是很少的,也就是说即使很多人参与,最终能抢到的必然是少数用户,这样会造成资源浪费。
发明内容
本发明的目的在于克服现有技术的不足,本发明提供了一种接口访问流量的自动控制方法、装置、存储介质及服务器,通过对接口的限流,保证部分能正常参与活动的同时又保护系统不被压垮,并且配置的方便简易,可以大大提运营效率,可以快速响应的运营的需求变化。
为了解决上述技术问题,本发明实施例提供了一种接口访问流量的自动控制方法,所述方法包括:
获得活动接口,基于所述活动接口的活动划分业务参数设置限流关键字;
获得所述限流关键字对应的限流策略,基于对应的限流策略对所述活动接口进行限流配置;
将限流配置后的活动接口基于redis存储结构进行存储;
基于预设限流算法对存储在redis存储结构中的限流配置后的活动接口按照预设流量速度进行访问处理。
可选的,所述基于所述活动接口的活动划分业务参数设置限流关键字,包括:
根据所述活动接口将作为所述活动划分的业务参数设置为限流关键字。
可选的,所述限流关键字包括客户端、活动方案编码和商品编码。
可选的,所述获得所述限流关键字对应的限流策略,基于对应的限流策略对所述活动接口进行限流配置,包括:
在配置页面上选取对应的限流关键字;
基于所述限流关键字自动查找对应的限流策略,并基于对应的限流策略对所述活动接口进行限流配置。
可选的,所述将限流配置后的活动接口基于redis存储结构进行存储,包括:
将限流配置后的活动接口采用分布式存储中间件的redis存储结构进行存储。
可选的,所述基于预设限流算法对存储在redis存储结构中的限流配置后的活动接口按照预设流量速度进行访问处理,包括:
基于令牌桶算法对存储在redis存储结构中的限流配置后的活动接口按照预设流量速度进行访问处理。
可选的,所述基于令牌桶算法对存储在redis存储结构中的限流配置后的活动接口按照预设流量速度进行访问处理,包括:
获得用户配置的平均发送速率,并间隔平均发送速率分之一秒将一个令牌加入令牌桶中;
设令牌桶可以存放若干个令牌,在所述令牌桶已满时,对到达的令牌进行丢弃;
当流量以预设速率进入对存储在redis存储结构中的限流配置后的活动接口进行访问时,从所述令牌桶中取出一个令牌,并且获得令牌对应的流量通过活动接口的访问;获取不到令牌对应的流量熔断活动接口的访问。
另外,本发明实施例还提供了一种接口访问流量的自动控制装置,所述装置包括:
设置模块:用于获得活动接口,基于所述活动接口的活动划分业务参数设置限流关键字;
限流配置模块:用于获得所述限流关键字对应的限流策略,基于对应的限流策略对所述活动接口进行限流配置;
存储模块:用于将限流配置后的活动接口基于redis存储结构进行存储;
访问模块:用于基于预设限流算法对存储在redis存储结构中的限流配置后的活动接口按照预设流量速度进行访问处理。
另外,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上述中任意一项所述的自动控制方法。
另外,本发明实施例还提供了一种服务器,其包括:
一个或多个处理器;
存储器;
一个或多个应用程序,其中所述一个或多个应用程序被存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个应用程序配置用于:执行根据上述中任意一项所述的自动控制方法。
在本发明实施例中,通过对接口的限流,保证部分能正常参与活动的同时又保护系统不被压垮,并且配置的方便简易,可以大大提运营效率,可以快速响应的运营的需求变化。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见的,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1是本发明实施例中的接口访问流量的自动控制方法的流程示意图;
图2是本发明实施例中的接口访问流量的自动控制装置的结构组成示意图;
图3是本发明实施例中的服务器的结构组成示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
实施例一,请参阅图1,图1是本发明实施例中的接口访问流量的自动控制方法的流程示意图。
如图1所示,一种接口访问流量的自动控制方法,所述方法包括:
S11:获得活动接口,基于所述活动接口的活动划分业务参数设置限流关键字;
在本发明具体实施过程中,所述基于所述活动接口的活动划分业务参数设置限流关键字,包括:根据所述活动接口将作为所述活动划分的业务参数设置为限流关键字。
进一步的,所述限流关键字包括客户端、活动方案编码和商品编码。
具体的,首先是设置限流关键字,即根据活动接口将一些可以作为活动划分的业务参数设置为限流关键字,比如客户端、活动方案编码、商品编码等。
S12:获得所述限流关键字对应的限流策略,基于对应的限流策略对所述活动接口进行限流配置;
在本发明具体实施过程中,所述获得所述限流关键字对应的限流策略,基于对应的限流策略对所述活动接口进行限流配置,包括:在配置页面上选取对应的限流关键字;基于所述限流关键字自动查找对应的限流策略,并基于对应的限流策略对所述活动接口进行限流配置。
具体的,在配置页面可以手动勾选这些作为接口限流关键字,当接口入参命中这些关键参数时,自动查找对应的限流策略,然后根据对应于的限流策略对活动接口进行限流配置,即可实现流量控制,这样的配置方式通俗易懂,易操作,并且粒度细。
S13:将限流配置后的活动接口基于redis存储结构进行存储;
在本发明具体实施过程中,所述将限流配置后的活动接口基于redis存储结构进行存储,包括:将限流配置后的活动接口采用分布式存储中间件的redis存储结构进行存储。
具体的,次为了适应高并发的场景,这里对于限流配置后的活动接口采用高性能的分布式存储中间件redis,它单机可支持高达10万并发,并且支持主从,保证了高性能的同时既又高可用。
S14:基于预设限流算法对存储在redis存储结构中的限流配置后的活动接口按照预设流量速度进行访问处理。
在本发明具体实施过程中,所述基于预设限流算法对存储在redis存储结构中的限流配置后的活动接口按照预设流量速度进行访问处理,包括:基于令牌桶算法对存储在redis存储结构中的限流配置后的活动接口按照预设流量速度进行访问处理。
进一步的,所述基于令牌桶算法对存储在redis存储结构中的限流配置后的活动接口按照预设流量速度进行访问处理,包括:获得用户配置的平均发送速率,并间隔平均发送速率分之一秒将一个令牌加入令牌桶中;设令牌桶可以存放若干个令牌,在所述令牌桶已满时,对到达的令牌进行丢弃;当流量以预设速率进入对存储在redis存储结构中的限流配置后的活动接口进行访问时,从所述令牌桶中取出一个令牌,并且获得令牌对应的流量通过活动接口的访问;获取不到令牌对应的流量熔断活动接口的访问。
具体的,在限流算法的选择中包括常见的限流算法有三种,1、限制瞬时并发数(瞬时并发数,系统同时处理的请求/事务数量)2、限制时间窗最大请求数(时间窗最大请求数,指定的时间范围内允许的最大请求数)3、令牌桶,第一种和第二种都有可能会出现流量不平滑的情况,时间窗内一小段流量占比特别大;在本申请中,采用令牌桶算法,即:
假如用户配置的平均发送速率为r,则每隔1/r秒一个令牌被加入到桶中;假设桶中最多可以存放b个令牌。如果令牌到达时令牌桶已经满了,那么这个令牌会被丢弃;当流量以速率v进入,从桶中以速率v取令牌,拿到令牌的流量通过,拿不到令牌流量不通过,执行熔断逻辑;长期来看,符合流量的速率是受到令牌添加速率的影响,被稳定为:r;因为令牌桶有一定的存储量,可以抵挡一定的流量突发情况;M是以字节/秒为单位的最大可能传输速率:M>r;T max=b/(M-r)承受最大传输速率的时间;B max=T max*M承受最大传输速率的时间内传输的流量;优点:流量比较平滑,并且可以抵挡一定的流量突发情况。
在本发明实施例中,通过对接口的限流,保证部分能正常参与活动的同时又保护系统不被压垮,并且配置的方便简易,可以大大提运营效率,可以快速响应的运营的需求变化。
实施例二,请参阅图2,图2是本发明实施例中的接口访问流量的自动控制装置的结构组成示意图。
如图2所示,一种接口访问流量的自动控制装置,所述装置包括:
设置模块21:用于获得活动接口,基于所述活动接口的活动划分业务参数设置限流关键字;
在本发明具体实施过程中,所述基于所述活动接口的活动划分业务参数设置限流关键字,包括:根据所述活动接口将作为所述活动划分的业务参数设置为限流关键字。
进一步的,所述限流关键字包括客户端、活动方案编码和商品编码。
具体的,首先是设置限流关键字,即根据活动接口将一些可以作为活动划分的业务参数设置为限流关键字,比如客户端、活动方案编码、商品编码等。
限流配置模块22:用于获得所述限流关键字对应的限流策略,基于对应的限流策略对所述活动接口进行限流配置;
在本发明具体实施过程中,所述获得所述限流关键字对应的限流策略,基于对应的限流策略对所述活动接口进行限流配置,包括:在配置页面上选取对应的限流关键字;基于所述限流关键字自动查找对应的限流策略,并基于对应的限流策略对所述活动接口进行限流配置。
具体的,在配置页面可以手动勾选这些作为接口限流关键字,当接口入参命中这些关键参数时,自动查找对应的限流策略,然后根据对应于的限流策略对活动接口进行限流配置,即可实现流量控制,这样的配置方式通俗易懂,易操作,并且粒度细。
存储模块23:用于将限流配置后的活动接口基于redis存储结构进行存储;
在本发明具体实施过程中,所述将限流配置后的活动接口基于redis存储结构进行存储,包括:将限流配置后的活动接口采用分布式存储中间件的redis存储结构进行存储。
具体的,次为了适应高并发的场景,这里对于限流配置后的活动接口采用高性能的分布式存储中间件redis,它单机可支持高达10万并发,并且支持主从,保证了高性能的同时既又高可用。
访问模块24:用于基于预设限流算法对存储在redis存储结构中的限流配置后的活动接口按照预设流量速度进行访问处理。
在本发明具体实施过程中,所述基于预设限流算法对存储在redis存储结构中的限流配置后的活动接口按照预设流量速度进行访问处理,包括:基于令牌桶算法对存储在redis存储结构中的限流配置后的活动接口按照预设流量速度进行访问处理。
进一步的,所述基于令牌桶算法对存储在redis存储结构中的限流配置后的活动接口按照预设流量速度进行访问处理,包括:获得用户配置的平均发送速率,并间隔平均发送速率分之一秒将一个令牌加入令牌桶中;设令牌桶可以存放若干个令牌,在所述令牌桶已满时,对到达的令牌进行丢弃;当流量以预设速率进入对存储在redis存储结构中的限流配置后的活动接口进行访问时,从所述令牌桶中取出一个令牌,并且获得令牌对应的流量通过活动接口的访问;获取不到令牌对应的流量熔断活动接口的访问。
具体的,在限流算法的选择中包括常见的限流算法有三种,1、限制瞬时并发数(瞬时并发数,系统同时处理的请求/事务数量)2、限制时间窗最大请求数(时间窗最大请求数,指定的时间范围内允许的最大请求数)3、令牌桶,第一种和第二种都有可能会出现流量不平滑的情况,时间窗内一小段流量占比特别大;在本申请中,采用令牌桶算法,即:
假如用户配置的平均发送速率为r,则每隔1/r秒一个令牌被加入到桶中;假设桶中最多可以存放b个令牌。如果令牌到达时令牌桶已经满了,那么这个令牌会被丢弃;当流量以速率v进入,从桶中以速率v取令牌,拿到令牌的流量通过,拿不到令牌流量不通过,执行熔断逻辑;长期来看,符合流量的速率是受到令牌添加速率的影响,被稳定为:r;因为令牌桶有一定的存储量,可以抵挡一定的流量突发情况;M是以字节/秒为单位的最大可能传输速率:M>r;T max=b/(M-r)承受最大传输速率的时间;B max=T max*M承受最大传输速率的时间内传输的流量;优点:流量比较平滑,并且可以抵挡一定的流量突发情况。
在本发明实施例中,通过对接口的限流,保证部分能正常参与活动的同时又保护系统不被压垮,并且配置的方便简易,可以大大提运营效率,可以快速响应的运营的需求变化。
本发明实施例提供的一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,该程序被处理器执行时实现上述实施例中任意一个实施例的自动控制方法。其中,所述计算机可读存储介质包括但不限于任何类型的盘(包括软盘、硬盘、光盘、CD-ROM、和磁光盘)、ROM(Read-Only Memory,只读存储器)、RAM(Random AcceSS Memory,随即存储器)、EPROM(EraSable Programmable Read-Only Memory,可擦写可编程只读存储器)、EEPROM(Electrically EraSable ProgrammableRead-Only Memory,电可擦可编程只读存储器)、闪存、磁性卡片或光线卡片。也就是,存储设备包括由设备(例如,计算机、手机)以能够读的形式存储或传输信息的任何介质,可以是只读存储器,磁盘或光盘等。
本发明实施例还提供了一种计算机应用程序,其运行在计算机上,该计算机应用程序用于执行上述中任意一个实施例的自动控制方法。
此外,图3是本发明实施例中的服务器的结构组成示意图。
本发明实施例还提供了一种服务器,如图3所示。所述服务器包括处理器302、存储器303、输入单元304以及显示单元305等器件。本领域技术人员可以理解,图3示出的服务器结构器件并不构成对所有设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件。存储器303可用于存储应用程序301以及各功能模块,处理器302运行存储在存储器303的应用程序301,从而执行设备的各种功能应用以及数据处理。存储器可以是内存储器或外存储器,或者包括内存储器和外存储器两者。内存储器可以包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦写可编程ROM(EEPROM)、快闪存储器、或者随机存储器。外存储器可以包括硬盘、软盘、ZIP盘、U盘、磁带等。本发明所公开的存储器包括但不限于这些类型的存储器。本发明所公开的存储器只作为例子而非作为限定。
输入单元304用于接收信号的输入,以及接收用户输入的关键字。输入单元304可包括触控面板以及其它输入设备。触控面板可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板上或在触控面板附近的操作),并根据预先设定的程序驱动相应的连接装置;其它输入设备可以包括但不限于物理键盘、功能键(比如播放控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。显示单元305可用于显示用户输入的信息或提供给用户的信息以及终端设备的各种菜单。显示单元305可采用液晶显示器、有机发光二极管等形式。处理器302是终端设备的控制中心,利用各种接口和线路连接整个设备的各个部分,通过运行或执行存储在存储器302内的软件程序和/或模块,以及调用存储在存储器内的数据,执行各种功能和处理数据。
作为一个实施例,所述服务器包括:一个或多个处理器302,存储器303,一个或多个应用程序301,其中所述一个或多个应用程序301被存储在存储器303中并被配置为由所述一个或多个处理器302执行,所述一个或多个应用程序301配置用于执行上述实施例中的任意一实施例中对的自动控制方法。
在本发明实施例中,通过对接口的限流,保证部分能正常参与活动的同时又保护系统不被压垮,并且配置的方便简易,可以大大提运营效率,可以快速响应的运营的需求变化。
另外,以上对本发明实施例所提供的一种接口访问流量的自动控制方法、装置、存储介质及服务器进行了详细介绍,本文中应采用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

Claims (8)

1.一种接口访问流量的自动控制方法,其特征在于,所述方法包括:
获得活动接口,基于所述活动接口的活动划分业务参数设置限流关键字;
获得所述限流关键字对应的限流策略,基于对应的限流策略对所述活动接口进行限流配置;
将限流配置后的活动接口基于redis存储结构进行存储;
基于预设限流算法对存储在redis存储结构中的限流配置后的活动接口按照预设流量速度进行访问处理;
所述基于预设限流算法对存储在redis存储结构中的限流配置后的活动接口按照预设流量速度进行访问处理,包括:
基于令牌桶算法对存储在redis存储结构中的限流配置后的活动接口按照预设流量速度进行访问处理;
所述基于令牌桶算法对存储在redis存储结构中的限流配置后的活动接口按照预设流量速度进行访问处理,包括:
获得用户配置的平均发送速率,并间隔平均发送速率分之一秒将一个令牌加入令牌桶中;
设令牌桶可以存放若干个令牌,在所述令牌桶已满时,对到达的令牌进行丢弃;
当流量以预设速率进入对存储在redis存储结构中的限流配置后的活动接口进行访问时,从所述令牌桶中取出一个令牌,并且获得令牌对应的流量通过活动接口的访问;获取不到令牌对应的流量熔断活动接口的访问;
所述令牌桶算法如下:
假如用户配置的平均发送速率为r,则每隔1/r秒一个令牌被加入到桶中;假设桶中最多存放b个令牌;如果令牌到达时令牌桶已经满了,那么这个令牌会被丢弃;当流量以速率v进入,从桶中以速率v取令牌,拿到令牌的流量通过,拿不到令牌流量不通过,执行熔断逻辑;符合流量的速率是受到令牌添加速率的影响,被稳定为:r;M是以字节/秒为单位的最大可能传输速率:M>r;Tmax=b/(M-r),承受最大传输速率的时间;Bmax=Tmax*M,承受最大传输速率的时间内传输的流量。
2.根据权利要求1所述的自动控制方法,其特征在于,所述基于所述活动接口的活动划分业务参数设置限流关键字,包括:
根据所述活动接口将作为所述活动划分的业务参数设置为限流关键字。
3.根据权利要求1或2所述的自动控制方法,其特征在于,所述限流关键字包括客户端、活动方案编码和商品编码。
4.根据权利要求1所述的自动控制方法,其特征在于,所述获得所述限流关键字对应的限流策略,基于对应的限流策略对所述活动接口进行限流配置,包括:
在配置页面上选取对应的限流关键字;
基于所述限流关键字自动查找对应的限流策略,并基于对应的限流策略对所述活动接口进行限流配置。
5.根据权利要求1所述的自动控制方法,其特征在于,所述将限流配置后的活动接口基于redis存储结构进行存储,包括:
将限流配置后的活动接口采用分布式存储中间件的redis存储结构进行存储。
6.一种接口访问流量的自动控制装置,其特征在于,所述装置包括:
设置模块:用于获得活动接口,基于所述活动接口的活动划分业务参数设置限流关键字;
限流配置模块:用于获得所述限流关键字对应的限流策略,基于对应的限流策略对所述活动接口进行限流配置;
存储模块:用于将限流配置后的活动接口基于redis存储结构进行存储;
访问模块:用于基于预设限流算法对存储在redis存储结构中的限流配置后的活动接口按照预设流量速度进行访问处理;
所述基于预设限流算法对存储在redis存储结构中的限流配置后的活动接口按照预设流量速度进行访问处理,包括:
基于令牌桶算法对存储在redis存储结构中的限流配置后的活动接口按照预设流量速度进行访问处理;
所述基于令牌桶算法对存储在redis存储结构中的限流配置后的活动接口按照预设流量速度进行访问处理,包括:
获得用户配置的平均发送速率,并间隔平均发送速率分之一秒将一个令牌加入令牌桶中;
设令牌桶可以存放若干个令牌,在所述令牌桶已满时,对到达的令牌进行丢弃;
当流量以预设速率进入对存储在redis存储结构中的限流配置后的活动接口进行访问时,从所述令牌桶中取出一个令牌,并且获得令牌对应的流量通过活动接口的访问;获取不到令牌对应的流量熔断活动接口的访问;
所述令牌桶算法如下:
假如用户配置的平均发送速率为r,则每隔1/r秒一个令牌被加入到桶中;假设桶中最多存放b个令牌;如果令牌到达时令牌桶已经满了,那么这个令牌会被丢弃;当流量以速率v进入,从桶中以速率v取令牌,拿到令牌的流量通过,拿不到令牌流量不通过,执行熔断逻辑;符合流量的速率是受到令牌添加速率的影响,被稳定为:r;M是以字节/秒为单位的最大可能传输速率:M>r;Tmax=b/(M-r),承受最大传输速率的时间;Bmax=Tmax*M,承受最大传输速率的时间内传输的流量。
7.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1至5中任意一项所述的自动控制方法。
8.一种服务器,其特征在于,其包括:
一个或多个处理器;
存储器;
一个或多个应用程序,其中所述一个或多个应用程序被存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个应用程序配置用于:执行根据权利要求1至5中任意一项所述的自动控制方法。
CN202111660559.3A 2021-12-31 2021-12-31 接口访问流量的自动控制方法、装置、存储介质及服务器 Active CN114257550B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111660559.3A CN114257550B (zh) 2021-12-31 2021-12-31 接口访问流量的自动控制方法、装置、存储介质及服务器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111660559.3A CN114257550B (zh) 2021-12-31 2021-12-31 接口访问流量的自动控制方法、装置、存储介质及服务器

Publications (2)

Publication Number Publication Date
CN114257550A CN114257550A (zh) 2022-03-29
CN114257550B true CN114257550B (zh) 2024-01-30

Family

ID=80798972

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111660559.3A Active CN114257550B (zh) 2021-12-31 2021-12-31 接口访问流量的自动控制方法、装置、存储介质及服务器

Country Status (1)

Country Link
CN (1) CN114257550B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114900467A (zh) * 2022-05-11 2022-08-12 融慧金科金融服务外包(北京)有限公司 Api流量控制方法及装置
CN115801688A (zh) * 2022-10-27 2023-03-14 兴业银行股份有限公司 支持动态配置细粒度流控方法和系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101646259A (zh) * 2009-09-04 2010-02-10 杭州华三通信技术有限公司 一种无线局域网空口限速方法和一种无线网络设备
US8000244B1 (en) * 2007-08-03 2011-08-16 Hewlett-Packard Development Company, L.P. Shared rate limiters using floating buckets
CN110099009A (zh) * 2018-01-31 2019-08-06 北京易真学思教育科技有限公司 基于接口响应时间趋势的动态限流方法及计算机可读介质
CN111447150A (zh) * 2020-02-29 2020-07-24 中国平安财产保险股份有限公司 访问请求限流方法、服务器及存储介质
CN113285883A (zh) * 2021-05-25 2021-08-20 挂号网(杭州)科技有限公司 一种访问请求的限流方法及装置、电子设备、存储介质

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8000244B1 (en) * 2007-08-03 2011-08-16 Hewlett-Packard Development Company, L.P. Shared rate limiters using floating buckets
CN101646259A (zh) * 2009-09-04 2010-02-10 杭州华三通信技术有限公司 一种无线局域网空口限速方法和一种无线网络设备
CN110099009A (zh) * 2018-01-31 2019-08-06 北京易真学思教育科技有限公司 基于接口响应时间趋势的动态限流方法及计算机可读介质
CN111447150A (zh) * 2020-02-29 2020-07-24 中国平安财产保险股份有限公司 访问请求限流方法、服务器及存储介质
CN113285883A (zh) * 2021-05-25 2021-08-20 挂号网(杭州)科技有限公司 一种访问请求的限流方法及装置、电子设备、存储介质

Also Published As

Publication number Publication date
CN114257550A (zh) 2022-03-29

Similar Documents

Publication Publication Date Title
US8832063B1 (en) Dynamic request throttling
CN110545260B (zh) 一种基于拟态构造的云管理平台构建方法
CN114257550B (zh) 接口访问流量的自动控制方法、装置、存储介质及服务器
EP3380937B1 (en) Techniques for analytics-driven hybrid concurrency control in clouds
US7519730B2 (en) Copying chat data from a chat session already active
WO2021227677A1 (zh) 场景推送方法、执行方法、装置、终端、服务器和系统
US20140344435A1 (en) Computer implemented methods and apparatus for trials onboarding
US7539995B2 (en) Method and apparatus for managing an event processing system
US11893644B2 (en) Intelligent user interface monitoring and alert
CN112600761A (zh) 一种资源分配的方法、装置及存储介质
CN115757611A (zh) 大数据集群切换方法、装置、电子设备及存储介质
US20050160276A1 (en) System and method for a directory secured user account
CN113014608A (zh) 一种流量分发控制方法、装置、电子设备及存储介质
CN110191097A (zh) 登录页面安全性的检测方法、系统、设备及存储介质
CN105162837B (zh) 海量数据存储环境下提升i/o吞吐率的方法及系统
CN116521639A (zh) 一种日志数据的处理方法、电子设备和计算机可读介质
US20220278989A1 (en) Access control for private channels in a channel-based discussion system
CN114513468B (zh) 一种Sentinel中流量防护方法、装置、设备、存储介质及产品
CN114710485B (zh) 处理方法和处理装置
US11553015B2 (en) Progressive instantiation of workspaces for a group-based communication system
CN114827157A (zh) 集群任务处理方法、装置、系统、电子设备及可读介质
US7861242B2 (en) Mobile application morphing system and method
CN108234349A (zh) 提高soa系统健壮性的方法和装置
US11973846B1 (en) Polling command strategy for near real time updates
WO2013053254A1 (en) Index creation method and system

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