本文共 774 字,大约阅读时间需要 2 分钟。
1.引入redis依赖
org.springframework.boot spring‐boot‐starter‐data‐redis‐reactive 2.1.3.RELEASE
2.定义一个限流的key
@Bean public KeyResolver ipKeyResolver() { return new KeyResolver() { @Override public Monoresolve(ServerWebExchange exchange) { returnMono.just(exchange.getRequest().getRemoteAddress().getHostName()); } }; }
3.在application.yml中设置redis和令牌桶生成令牌速率
‐ name: RequestRateLimiter #请求数限流 名字不能随便写 args: key‐resolver: "#{@ipKeyResolver}" redis‐rate‐limiter.replenishRate: 1 #令牌桶每秒填充平均速率 redis‐rate‐limiter.burstCapacity: 1 #令牌桶总容量
4.配置redis
redis: host: 192.168.200.128 port: 6379
转载地址:http://gitj.baihongyu.com/