问题描述
基于 WebFlux 重试的速率限制
我想限制从 WebFlux 退休的人数。用例是,如果要调用的服务出现故障,那么我最终会重试所有读取超时,这反过来又会造成双倍的负载。 我想出了一种编写自定义方法来检查重试可行性的方法,但这看起来更像是一种黑客攻击。对于这个用例,有没有更简洁的方法可以遵循?
解决方法
根据问题标签,您已经知道您需要什么:断路器。
Resilience4j 断路器支持 Project Reactor:https://resilience4j.readme.io/docs/examples-1#decorate-flowable-with-a-circuitbreaker