You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Kong网关如何为单个服务配置多套速率限流规则

Kong 多维度限流配置问题解答

问题根因

你遇到的同一插件类型仅最后一个生效的问题,是未配置插件唯一实例名导致的同作用域插件覆盖。

核心问题答复

  • 开源Kong 2.3及以上版本原生支持同一作用域绑定同一插件的多个不同实例,该需求并非开源rate-limiting插件的固有局限,无需使用企业版高级限流插件即可实现。
  • 仅2.3以下版本的Kong默认存在同作用域同类型插件只能绑定一个的限制。

适配方案

方案1:高版本Kong(2.3+)使用插件实例名配置

给两个限流插件分别添加唯一的实例名注解即可同时生效,修改后的配置如下:

  1. 组织维度限流插件配置
apiVersion: configuration.konghq.com/v1
kind: KongPlugin
metadata:
  name: rate-limiting-myapp-org
  annotations:
    konghq.com/plugin-instance-name: org-rate-limit # 全局唯一的插件实例名
config:
  day: 8 # 按需求调整为单日限制
  limit_by: header
  header_name: 'x-org-id'
  policy: local
plugin: rate-limiting
  1. 用户维度限流插件配置
apiVersion: configuration.konghq.com/v1
kind: KongPlugin
metadata:
  name: rate-limiting-myapp-user
  annotations:
    konghq.com/plugin-instance-name: user-rate-limit # 与上方实例名不同即可
config:
  day: 5 # 按需求调整为单日限制
  limit_by: header
  header_name: 'x-user-id'
  policy: local
plugin: rate-limiting
  1. Service注解配置保持引用两个插件即可:
konghq.com/plugins: rate-limiting-myapp-org, rate-limiting-myapp-user

配置后两个限流规则会同时生效,任意一个阈值触发都会返回429限流响应,完全满足用户+组织双维度限流需求。

方案2:低版本Kong兼容方案

如果使用的是2.3以下版本不支持插件实例名,可以将两个限流规则绑定到不同作用域避免覆盖:比如将组织维度限流绑定到对应Ingress资源,用户维度限流绑定到Service资源,二者作用域不同不会互相覆盖,也可以同时生效。


内容的提问来源于stack exchange,提问作者Abdul Razak AK

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.01 13:15:03