流控管理
简介
为了保护API开放者的后端服务不因过于频繁的调用导致负载过高,并保证后端资源合理的分配到每个APP或用户,API网关提供了流量控制的功能来限制API的调用。流量控制策略与API独立管理,流量控制策略配置完成后可绑定到不同的API上,对多个API同时生效。
创建流量控制策略
选择“流控管理”,进入流控管理页面:
点击"新建流控策略",创建一条新的流量控制策略:
流量控制策略有三个维度,每个维度需要指定某个时间间隔t下的最大调用测试n,单位可以是是秒、分、小时,如1000次/1秒,5000次/5分钟。指定后在API调用时,任意的时间间隔t内,调用次数均不会超过n。流控维度如下:
维度 | 说明 | |
---|---|---|
API流量限制 | 限制API在单位时间t内被调用的次数不能超过设定值n。 | |
APP流量限制 | 限制任何一个APP在时间t内对API的调用次数不超过设定值n。 | |
用户流量限制 | 限制任何一个百度智能云账号对 API 在时间t内的调用次数不能超过设定值n。一个百度智能云账号可能有多个 APP,所以对百度智能云账号的流量限制就是对该账号下所有 APP 的流量总和的限制。 |
配置完成后,点击确认,完成流量控制策略的创建。
注意:流量控制是在认证通过之后进行的,如果调用时没有通过APP ak/sk的签名认证,则不会计入到调用次数。对认证方式为无认证的API,APP维度与用户维度的流控策略无效。
添加特殊策略
流量控制策略对API和每个APP/账户的调用次数进行限制,API网关同时提供对特殊用户或特殊账号的流量限制策略,用户可以在创建流量控制策略之后,通过以下步骤添加特殊流控策略。首先进入流控策略的详情页:
然后点击“特殊应用”或“特殊百度智能云用户”:
添加特殊应用
点击“添加特殊应用”,进入如下界面:
输入特殊应用的ID,并指定调用阈值。该阈值可以大于或小于流控策略对每个应用的限制,但是不得高于API对用户的限制。特殊应用不受流控策略对任意应用流控值的影响。
添加特殊百度用户
点击“添加特殊用户”,进入如下界面:
输入特殊用户的ID(用户ID可以通过个人中心->用户ID获取),并指定调用阈值。该阈值可以大于或小于流控策略对每个用户的限制,但是不得高于API对用户的限制。特殊应用不受流控策略对任意应用流控值得影响。
将策略与API绑定
只有将流控策略与API绑定后,才能对API生效,同一个流控策略可以绑定到不同的API上。点击要操作的策略的"添加"按钮,可为其绑定新的API:
分别选择好分组、要生效的环境以及API,选择好之后点击确定,完成绑定。
您也可以点击"管理",进行API的绑定与解除。
注:绑定时需要指定API所在的环境,并且单个API的单个环境只能绑定一个流控策略。
将策略与API解绑
在流控列表页面选择需要操作的流控策略,点击“管理”或“详情”:
然后在关联信息的绑定API列表页签中选择需要解绑的API,或者直接选择单个API点击解绑按钮: