- 文档首页
API 网关
用户指南
插件中心
流量管控
访问限流
访问限流
限流插件支持控制网关实例级别、路由级别的访问请求阈值,保障后端服务的稳定性。本文为您介绍如何配置限流功能。
背景信息
访问限流是 API 网关提供的一种流量管控能力。通过限流插件,您可以为网关实例或路由设置单位时间内允许通过的最大请求数量。当实际请求量超过设定的阈值时,超出部分的请求将被网关拒绝。访问限流的请求处理流程如下。
- 网关接收请求后,判断当前请求命中的路由是否配置了限流策略。
- 若命中路由级别限流策略,则对该路由进行计数,判断是否超过阈值。
- 若未命中任何路由级别限流策略,则检查请求所属实例是否配置了实例级别限流策略,并对该实例进行计数。
- 若请求量未超过限流阈值,请求正常转发至后端服务。
- 若请求量已超过限流阈值,网关直接拒绝访问并提示 rate_limited,不再将请求转发至后端。
- 路由级别限流:在一个统计周期内,统计指定路由中所有的请求方法、匹配路径和域名的请求量总和。
- 实例级别限流:在一个统计周期内,统计指定实例中所有路由的请求量总和。
网关对实例级别限流策略和路由级别限流策略进行分别计数,路由级别限流策略生效优先级高于网关级别。例如:假设 A 网关实例下有 a、b、c、d 共 4 条路由。实例 A、路由 a、b、c 均配置了限流策略,路由 d 未配置限流策略。则在一个统计周期内:
- 若请求命中 A 实例下的 a、b、c 路由,将对 a、b、c 路由分别进行计数,不对实例 A 计数。
- 若请求命中 A 实例下未设置限流策略的 d 路由,则仅对实例 A 进行计数。
前提条件
使用限制
- 开启限流插件后,将在每个网关副本上单独生效,不同副本间的限流计数相互隔离。
- 例如:当您的网关实例为 2 副本时,配置 100 次/分钟的实例级别限流后,每个副本的限流为 100 次/分钟,实际网关的理论最大流量为 200 次/分钟。
- 路由级别限流仅支持 HTTP(S) 路由,不支持 TCP 路由。
操作步骤
- 在左侧导航栏 实例管理 下拉框中选择目标实例后,单击 插件中心 > 流量管控 > 限流插件。
-
结果验证
配置完成后,在 限流插件 列表将生成一条新的限流插件记录。插件状态为 已启用,表示插件功能生效。
- 使用 API 网关实例中配置的域名访问服务,当访问请求未超过限流阈值时。
- 预期结果如下,表示能够通过 API 网关访问到后端的服务。
- 使用 API 网关实例中配置的域名访问服务,当访问请求超过限流阈值时。
- 预期结果如下,在目标配额内的请求可访问成功,超出目标配额的请求将被拒绝,并提示rate_limited。
最近更新时间:2026.08.10 17:59:43