【发布时间】:2020-08-05 04:33:04
【问题描述】:
我需要在基于 java 的微服务中实现断路器,这样如果 backendA 定义了故障数量,则回退方法应该调用另一个 backendB,如果 backendB 也失败了,那么应该有另一个后备方法来从 Java API 本身返回错误。是否可能,更重要的是是否建议实现这样的设计。如果有人可以提供任何参考或示例使用这种模式。我将使用 resilience4j 库来做到这一点。代码结构如下所示:
@CircuitBreaker(name = "backendA", fallbackMethod = "fallback1")
{Method to call backendA}//Threshold value : 10 requests
@CircuitBreaker(name = "backendB", fallbackMethod = "fallback2")
private String fallback1() { Method to call backendB} // Threshold value : 2 requests
private String fallback2() { Method to return error}
【问题讨论】:
标签: spring-boot design-patterns microservices spring-cloud circuit-breaker