限频设置
HTTP 网关支持按路由配置限频规则。规则仅对匹配该路由域名和路径的请求生效;同一上游资源配置在不同路由上时,各路由可以使用不同的限频阈值。
配置限频
- 登录云开发平台,选择目标环境。
- 在左侧导航栏进入【HTTP 网关】。
- 在【路由管理】中找到需要配置的路由,点击【限频设置】。
- 在限频设置中按需配置路由维度限频和客户端维度限频。
- 保存配置。
限频规则
路由维度限频
路由维度限频以当前路由路径为范围,限制命中该路径的总请求数,防止路由被过度调用导致服务不可用。
配置说明
- 可配置范围:100 至环境最大 QPS。
- 计算方式:每秒请求数(QPS)= 命中当前路由路径的总请求数/秒。
- 典型场景:
- 保护核心接口不被突发流量打垮。
- 限制第三方调用频率。
- 控制上游资源使用成本。
配置建议
- 根据业务峰 值流量设置合理阈值。
- 预留 20%-30% 缓冲空间应对流量波动。
- 配合监控告警及时发现限频情况。
示例:某路由平均 QPS 为 80,峰值为 120,建议配置限频 150 QPS。
客户端维度限频
客户端维度限频用于限制单个客户端对当前路由的请求频率,防止恶意刷接口或用户过度使用资源。
配置说明
- 可配置范围:0 至 30 QPS。
- 标识方式:
UserID(云开发用户 ID/微信 openid):按用户 ID 限频。ClientIP(客户端 IP 地址):按发起请求的客户端 IP 地址限频。
- 选择建议:
- 有用户体系的业务选择
UserID。 - 匿名访问场景选择
ClientIP。 - 同一路由只能选择一种标识方式。
- 有用户体系的业务选择
- 典型场景:
- 防止用户频繁刷新页面。
- 限制爬虫行为。
- 控制 API 调用配额。
- 保护敏感接口不被爆破。
注意事项:
UserID方式需要请求携带用户身份信息,未携带用户 ID 的请求会被忽略并放通。ClientIP可能误伤共享 IP 的用户。- 重要业务建议同时配置路由维度和客户端维度限频,分别防止突发流量耗尽上游资源,以及单一客户端过度调用接口。