流量控制插件

开启流量控制插件

打开“应用服务管理-企业门户-更多-网关”,打开插件配置页面,如下图所示

在“企业门户V2”中配置 kong 的插件,在“所有应用服务”中配置 kong2 的插件。

选择“所有应用服务”后,选择流量控制 rate-limiting 插件,开启插件并设置插件参数

img

插件参数说明

此插件是系统插件,可以参考 kong 官网插件说明:https://docs.konghq.com/hub/kong-inc/rate-limiting/

参数 描述
redis 端口 设置 redis 端口
redis_ssl
redis_username
redis 密码
redis 数据库
redis 主机
redis_ssl_verify
redis 超时
redis_server_name
是否隐藏客户端头部信息
是否容忍内部错误
header_name
month
小时
分钟
限制依据 consumer: credential: ip:
path
限制策略 local: 在对精度要求不高的场景下,官方推荐这种方式,在性能和维护上都很不错。如果是在 DB-less 的场景只能选择 redis 和 local 了。cluster:这是默认的方式,也是在要求频率控制精确的场景下,比较提倡的方式。这种方式把频率都记录在数据库中,每次请求过来都要查一下数据库,因此极大的影响了效率。 redis: 这种需要引入 redis,把频率记录在 redis 里面,每次请求过来都要查询一下 redis,性能肯定比 cluster 快,但是因为引入 redis,要考虑维护 redis 的成本

可以不用配置 redis,不过要设置限制方法,设置了每秒不超过2次,当请求超过2次,会出现

{
    "message": "API rate limit exceeded"
}

说明:根据年、月、日、时、分、秒设置限流规则,多个限制同时生效。比如:

  • 每天不能超过10次调用,每分钟不能超过3次。
  • 当一分钟内,访问超过3次,第四次就会报错。
  • 当一天内,访问次数超过10次,第十一次就会报错

results matching ""

    No results matching ""