基础流控插件
最近更新时间: 2024-10-17 17:10:00
操作场景
基础流量控制插件是 API 网关提供的强大流控限制,支持API、应用、ClientIP 三个维度的限流和秒、分钟、小时、天的限流。您可创建基础流控插件并绑定到 API 生效,以保护您的后端服务。
操作步骤
步骤1:创建插件
登录 API 网关控制台。
在左侧导航栏,单击插件,进入插件列表页。
单击页面左上角的新建,选择插件类型为基础流量控制,新建一个基础流量控制插件。
参数 | 是否必填 | 说明 |
---|---|---|
控制时长 | 必填 | 流量控制的时长单位,支持设置秒、分钟、小时、天四种维度。与"流控值" 配合使用,表示单位时间内的请求次数上限。 |
API 流控值 | 必填 | API 流控值是指时长内一个 API 能够被访问的次数上限。 |
应用流控值 | 选填 | 对绑定了该 API 的所有应用生效,指时长内一个应用能够被访问的次数上限。 |
客户端 IP 流控值 | 选填 | 对绑定了该 API 的所有客户端 IP(ClientIP)生效,指时长内一个 ClientIP 能够被访问的次数上限。 |
特殊应用 | 选填 | 最多可填写30个。对于特例,流控策略基础的 API 流量限制依然有效,您需要额外设定一个阈值作为该应用的流量限制值,同时流控策略基础的 App 流量限制和用户流量限制对该应用失效。 |
特殊 ClientIP | 选填 | 最多可填写30个。对于特例,流控策略基础的 API 流量限制依然有效,您需要额外设定一个阈值作为该 ClientIP 的流量限制值,同时流控策略基础的 App 流量限制和 ClientIP 流量限制对该应用失效。 |
步骤2:绑定 API 并生效
在列表中选中刚刚创建好的插件,单击操作列的绑定 API。
在绑定 API 弹窗中选择服务和环境,并选择需要绑定插件的 API。
- 单击确定,即可将插件绑定到 API,此时插件的配置已经对 API 生效。
PluginData
{
"expire_type":"hour", // 限流时间窗口单位,取值范围:[day, hour, minute, second]
"expire":1, // 限流时间窗口大小
"api_rate_limit":500, // API 流控值,需要为正整数
"app_rate_limit":1, // 应用流控值,需要为正整数
"ip_rate_limit":2, // 客户端 IP 流控值,需要为正整数
"spec_app_rate_limits":[ // 特殊应用流控列表
{
"app_id":"app-3q9l4909", // 应用 ID
"rate_limit":10 // 流控值,需要为正整数
}
],
"spec_ip_rate_limits":[ // 特殊客户端 IP 流控列表
{
"ip_key":"172.16.0.1", // 客户端 IP
"rate_limit":10 // 流控值,需要为正整数
}
]
}
注意事项
基础流控插件会受到服务流量控制、API 流控控制的影响;如果多种流控同时生效,最终流控值取最小限制。例如:在基础流控插件中设置某 API 的流控为 500QPS,此时该 API 所属服务流控值为 100QPS,API 本身流控值为 50QPS,实际最终生效的流控值是 50QPS。