插件说明与使用介绍 如何使用 在配置窗口页以YAML格式填写 配置示例 基于请求上下文和自定义表达式的限流配置示例。 通过将keytype设置为var或varcombination来支持基于请求上下文和自定义表达式的限流。支持各种请求参数和内置的nginx变量,以及变量组合。 常用参数示例: remoteaddr :客户端ip consumername:消费者名称;其他nginx变量也支持 argname: url参数,name表示参数名称 httpname: 请求header参数 cookiename: 请求的cookie参数 下面是一个示例,开启了limit count 插件,并设置keytype 为var,key设置为remoteaddr表示基于客户端ip进行请求限流: count: 2 timewindow: 60 rejectedcode: 503 keytype: "var" key: "remoteaddr" 下面是一个示例,开启了limit count 插件,并设置keytype 为var,key设置为arguserId,可对不同的url参数userId分别进行限流计数: "allowdegradation": false, "count": 20, "key": "arguserId", "keytype": "var", "policy": "local", "rejectedcode": 503, "showlimitquotaheader": true, "timewindow": 30 下面是一个示例,开启了limit count 插件,并设置keytype 为varcombination, key值设置为consumername remoteaddr,表示同时基于消费者名称和客户端ip进行限流计数。 count: 2 timewindow: 60 rejectedcode: 503 keytype: "varcombination" key: "$consumername $remoteaddr" 下面是一个示例,开启了limit count 插件,并设置keytype 为constant: 基于常量的限流配置示例 通过设置keytype 为constant,key 的值将会直接作为常量来处理 count: 2 timewindow: 60 rejectedcode: 503 keytype: "constant" key: "remoteaddr" 全局限流配置示例 在页面上选择Redis单节点配置或者Redis集群配置,并设置redis相关参数即可开启全局限流配置。 Redis可选择通过平台开通redis实例,或者自行部署,并在配置中填入连接信息即可。 配置示例: