流量控制策略说明
流量控制支持从用户、凭据和时间段等不同的维度限制对API的调用次数,保护后端服务。支持按分/按秒粒度级别的流量控制。为了提供持续稳定的服务,您可以通过创建流控策略,针对部分API进行流量控制。
使用限制
- 已了解前提条件。
- API添加流控策略相当于流控策略同步绑定了API。同一个环境中,一个API只能被一个流控策略绑定,但一个流控策略可以绑定多个API。
- 如果API未绑定流控策略,流控限制值为实例“配置参数”中“ratelimit_api_limits”的参数运行值。
配置参数说明
参数 |
说明 |
---|---|
策略名称 |
API流控策略名称。 |
类型 |
分“基础流控”和“共享流控”两类。
|
时长 |
流量限制的时长。
|
API流量限制 |
单个API被调用次数上限。 与“时长”配合使用,表示单位时间内的单个API请求次数上限。 |
用户流量限制 |
单个用户调用API次数上限,仅在API的安全认证方式为APP认证或IAM认证时适用。
|
凭据流量限制 |
单个凭据调用API次数上限,仅在API的安全认证方式为APP认证时适用。
|
源IP流量限制 |
单个IP地址(客户端IP地址)调用API次数上限。您可以选择配置实例的“real_ip_from_xff”参数使用X-Forwarded-For头中的IP作为流控的判断依据。
|
描述 |
关于控制策略的描述。 |
后续操作
- 如果需要对某个凭据进行流量控制,可以在“流量控制策略”中为凭据绑定流量控制策略。绑定后,该凭据的流量受特殊凭据的阈值限制,而API流量和用户流量仍受流量控制策略限制。
- 如果需要对某个租户进行流量控制,可以在“流量控制策略”中为租户绑定流量控制策略。绑定后,该租户的流量受特殊租户的阈值限制,而API流量和用户流量仍受流量控制策略限制。
为凭据绑定流量控制策略
已创建凭据,或已获取其他凭据ID。
- 在流控策略详情页面,单击“特殊凭据”页签,进入特殊凭据页面。
- 单击“添加特殊凭据”,弹出“添加特殊凭据”对话框。
- 通过以下两种方式,添加特殊凭据。
- 添加已有凭据:单击“已有凭据”,选择已有凭据,输入阈值。
- 添加其他凭据:单击“其他”,输入其他用户的凭据ID和阈值。
特殊凭据流控值和凭据流量限制值共同作用时,以特殊凭据流控值为准。
例如:API流量限制值为10,凭据流量限制值为3,时长为1分钟,特殊凭据(凭据A)流控值为2,特殊凭据(凭据B)流控值为4,凭据A在1分钟内最多可以访问绑定了该流控策略的API 2次,凭据B在1分钟内最多可以访问绑定了该流控策略的API 4次。
为租户绑定流量控制策略
- 在流控策略详情页面,单击“特殊租户”,进入特殊租户页面。
- 单击“添加特殊租户”,弹出“添加特殊租户”对话框。
- 输入租户信息。
表2 特殊租户信息 参数
说明
租户ID
获取的账号ID或项目ID,请参考表1中的“特殊租户”说明。
阈值
固定时间段内,此租户访问API的最大值。
不能超过API流量限制值。
- 单击“确定”,完成特殊租户的添加。
特殊租户流控值和用户流量限制值共同作用时,以特殊租户流控值为准。
例如:API流量限制值为10,用户流量限制值为3,时长为1分钟,特殊租户(租户ID为A)流控值为2,特殊租户(租户ID为B)流控值为4,租户A在1分钟内最多可以访问绑定了该流控策略的API 2次,租户B在1分钟内最多可以访问绑定了该流控策略的API 4次。