【问题标题】:Spring Boot resilience4j ip ratelimitterSpring Boot弹性4j ip ratelimitter
【发布时间】:2020-11-03 18:22:05
【问题描述】:

我的 Spring Boot 项目必须是速率限制 ip 地址 用于 DDOS 攻击,但我看不到 ip 的表达式

https://resilience4j.readme.io/docs/getting-started-3

resilience4j.ratelimiter:
instances:
    backendA:
        limitForPeriod: 10
        limitRefreshPeriod: 1s
        timeoutDuration: 0
        registerHealthIndicator: true
        eventConsumerBufferSize: 100
    backendB:
        limitForPeriod: 6
        limitRefreshPeriod: 500ms
        timeoutDuration: 3s

我尝试使用 bucked4j,但我需要所有端点的指标

感谢您的帮助,

【问题讨论】:

  • 能否请您发布您的尝试以及您看到的错误,以便社区帮助您。
  • 我使用 weblogic 的过滤器不起作用。 © 尽最大努力提供帮助

标签: spring-boot resilience4j


【解决方案1】:

唯一的方法是为每个 IP 地址创建一个 RateLimiter 实例。 您还可以动态创建 RateLimiter 实例,这样您就不必在配置文件中指定每个 IP 地址。 您可以覆盖默认配置:

resilience4j.ratelimiter:
  configs:
    default:
        limitForPeriod: 10
        limitRefreshPeriod: 1s
        timeoutDuration: 0

【讨论】:

  • 我研究了 bucket4j-spring-boot-starter 但我使用 weblogic 过滤器不起作用。如果我使用 bucket4j-core,我会写很多代码指标、缓存、过滤所有端点。 Resilience4j 工作于 weblogic。例如,必须在执行器中查看 DDos 的 IP 地址;用户/列表拒绝 ip 计数:20 vs..
猜你喜欢
  • 2019-07-12
  • 2020-03-10
  • 2021-01-23
  • 2020-07-18
  • 1970-01-01
  • 2020-07-31
  • 2021-03-07
  • 2014-11-04
  • 2018-06-08
相关资源
最近更新 更多