实施步骤
- 创建策略。
登录API网关控制台,创建流量控制2.0策略。具体操作步骤请参考《API网关用户指南》中的流量控制2.0策略。
在左侧导航栏中选择“API管理 > API策略”,单击“创建策略”,在弹窗中选择“流量控制2.0”。
根据流控诉求,配置策略基本信息。表1 策略基本信息 参数
配置说明
策略名称
根据规划自定义名称。建议您按照一定的命名规则填写名称,方便您快速识别和查找
流控类型
此处选择“高性能流控”模式。
策略生效范围
此处选择“单个API生效”,对单个API进行流量统计和控制。
时长
流量限制时长,根据诉求填写60秒。
- 基础流控配置。
根据1,默认API在60秒内的流量限制为10次,用户流量限制为5次。
表2 基础流控配置 参数
配置说明
API流量控制限制
10
用户流量控制限制
5
- 参数流控配置。
- 根据2,开启参数流控配置开关进行参数流量控制,定义参数Header并定义对应的规则。
- 单击“添加参数”,在“参数位置”列选择“header”,在“参数”列填写“Host”。
- 在“定义规则”区域,单击“添加规则”,API流量限制设置为10次,时长为60秒;单击编辑规则,设置“条件表达式配置”中匹配条件为“Host = www.abc.com”。
- 单击“确定”,生成参数header为Host对应的匹配规则“Host = www.abc.com”,表示在60s内,对于请求头域中Host参数等于“www.abc.com”的API,且API调用次数达到10,参数流控生效。
- 根据3、4,定义参数Path对应的多重规则。
- 在“定义规则”区域,单击“添加规则”,API流量限制设置为10次,时长为60秒;单击编辑规则,设置“条件表达式配置”中的匹配条件。
- 依次添加三个条件表达式,请求路径为“reqPath= /fc”和“reqPath= /list”,请求方法为“method=get”。
- 单击“转子层级”,进一步划分子层级约束条件。
- 两个请求路径“reqPath”条件表达式为互斥关系,故将“AND”关系改为“OR”,表示请求路径为“reqPath= /fc”或者“reqPath= /list”。
- 将“reqPath= /list”和“method= get”两个匹配条件进行约束,选中二者,单击“确定转子层级”,匹配条件默认为“AND”关系。
- 单击“确定”。表示在60s内,对于请求路径为“reqPath= /list”且请求方法为“method= get”的API或请求路径为“reqPath= /fc”的API,在API调用次数达到10次时,参数流控生效。
- 根据2,开启参数流控配置开关进行参数流量控制,定义参数Header并定义对应的规则。
- 特殊流控配置。
根据5,开启特殊流控配置。对特殊租户Special Renter进行流量控制,限制该租户60秒内允许调用API的最大次数为5次。
表3 特殊流控配置 参数
配置说明
租户ID
租户Special Renter的ID
阈值
5
- 单击“确定”,流量控制2.0策略配置完成。
- 绑定API。
- 单击策略名称,进入策略详情。
- 在“关联API”区域,选择RELEASE环境,单击“绑定API”。选择需要绑定的API,单击“确定”。
- 验证。
通过相应的请求URL调用API,验证流量控制策略2.0是否生效。