1. 修改项目resources/application.yml文件
server: port: 8888 #端口spring: application: name: demo1 #应用名称必须要配置,不然无法启动 redis-limiter: #限流器配置 redis-host: 127.0.0.1 #redis server ip check-action-timeout: 100 #访问检查动作最大执行时间(单位毫秒) enable-dynamical-conf: true #开启动态限流配置
spring.application.name必须配置
![264de74c593ae1f560c0281c44af25bf.png](https://i-blog.csdnimg.cn/blog_migrate/fdb193d9c9437b97077a55a0201ba336.jpeg)
2. 新建一个RestController类
package com.tay.demo1;import com.tay.redislimiter.RateLimiter;import com.tay.redislimiter.dynamic.DynamicRateLimiter;import org.springframework.web.bind.annotation.GetMapping;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.RestController;import java.util.concurrent.TimeUnit;@RestController@RequestMapping("/demo")public class DemoController { @GetMapping("/test") //基于用户限流,独立用户每分钟最多2次访问,用户id在header中,key为userid //RateLimiter标签为静态配置,此类配置不可动态修改 @RateLimiter(base = "#Headers['userid']