pom.xml配置如下:
<spring.zuul.limit.version>1.3.4.RELEASE</spring.zuul.limit.version><!--zuul整合提供分布式限流策略的扩展--><dependency><groupId>com.marcosbarbero.cloud</groupId><artifactId>spring-cloud-zuul-ratelimit</artifactId><version>${spring.zuul.limit.version}</version></dependency>
yml配置:
zuul:ratelimit:enabled: true #开启限流repository: REDIS #启用redis存储 默认为内存存储,总共有 内容,redis Consul Bucket4j Spring Data ConcurrentHashMap(内存)behind-proxy: truedefault-policy: #默认全局配置limit: 10 #请求次数quota: 4 #每次请求限制秒速refresh-interval: 10 #多少秒内限制type: URL #根据什么限流 ORIGIN:根据ip地址区分 USER:是通过登录用户名进行区分,也包括匿名用户 URL:根据请求路径区分SendErrorFilter:post:disable: true
我这边配置说明为,全部的服务默认为 10秒内最多请求10次,每次请求时间不能超过4秒钟
更多配置看git:
点击打开链接