【问题标题】:Rate limiting on top of WebFlux retryWebFlux 重试之上的速率限制
【发布时间】:2021-06-09 20:24:11
【问题描述】:

WebFlux 重试之上的速率限制

我想限制从 WebFlux 退出的次数。用例是,如果要调用的服务出现故障,那么我最终会重试所有读取超时,这反过来又会造成双倍的负载。 我想出了一种方法来编写自定义方法来检查重试的可行性,但这看起来更像是一种 hack。对于这个用例,有什么更简洁的方法可以遵循吗?

【问题讨论】:

  • 您有没有机会阅读反应堆参考文档?它有一个关于重试运算符的部分。 projectreactor.io/docs/core/release/reference/#_retrying
  • @MichaelMcFadyen 这可能更清楚,但我认为问题在于如何确保限制所有发布商对单一服务的重试。如果是这样,那不是那么简单(重试运算符仅提供用于控制单个发布者级别的重试的语义。)
  • @NitinSaxena 你能更新你的问题来澄清一下吗?

标签: spring-boot spring-webflux circuit-breaker retrywhen


【解决方案1】:

根据问题标签,你已经知道你需要什么:断路器。

Resilience4j 断路器支持 Project Reactor:https://resilience4j.readme.io/docs/examples-1#decorate-flowable-with-a-circuitbreaker

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-07-09
    • 1970-01-01
    • 2020-11-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-10-13
    • 1970-01-01
    相关资源
    最近更新 更多