Spring cloud gateway限流操作--redisベースの原生限流


バージョンに注意してください.現在のGバージョンspring cloud,2.1に注意してください.xバージョンspring bootではspring gatewayオリジナルredis制限ストリームをサポートできません.redisにkey値がないため、制限ストリームが無効になります.
pom.xml
        <dependency>
            <groupId>org.springframework.cloudgroupId>
            <artifactId>spring-cloud-starter-gatewayartifactId>
        dependency>
        <dependency>
            <groupId>org.springframework.bootgroupId>
            <artifactId>spring-boot-starter-data-redis-reactiveartifactId>
        dependency>

application.yml
spring:
  cloud:
    gateway:
      discovery:
        locator:
          enabled: true
      routes:
      - id: user-service
        # uri lb://  (lb           ),                
        uri: lb://user
        predicates:
        #               user/hi
        - Path=/user/**
        filters:
        # StripPrefix=1    url    
        - StripPrefix=1
        - name: RequestRateLimiter
          args:
            redis-rate-limiter.replenishRate: 10
            redis-rate-limiter.burstCapacity: 20
            key-resolver: '#{@hostAddrKeyResolver}'

他のストリーム制限はこのブログを見ることができます.
https://www.cnblogs.com/forezp/p/10140316.html