【发布时间】:2020-06-28 04:36:47
【问题描述】:
我在我的 spring cloud api 网关中使用 redis 实现了 ratelimit。这是application.yml的一部分:
spring:
cloud:
gateway:
httpclient:
ssl:
useInsecureTrustManager: true
discovery:
locator:
enabled: true
routes:
- id: test-rest-service
uri: lb://test-rest-service
predicates:
- Path=/test/**
filters:
- RewritePath=/test/(?<path>.*), /$\{path}
- name: RequestRateLimiter
args:
key-resolver: "#{@userRemoteAddressResolver}"
redis-rate-limiter.replenishRate: 2
redis-rate-limiter.burstCapacity: 3
我通过邮递员调用了一个 GET API 并检查了响应标头。
X-RateLimit-Remaining -1
X-RateLimit-Burst-Capacity 3
X-RateLimit-Replenish-Rate 2
速率限制不起作用。为什么我的 X-RateLimit-Remaining 为负值?这是什么意思?我该如何解决?
【问题讨论】: