0

每当我们调用远程服务时,我们都会在我们的代码库中使用来自 Resilience4j 库的 Circuitbreaker。fallbackMethod 实现中应该包含什么?远程服务不可用时的一般做法是什么?如果远程服务在一分钟或几秒钟内不可用,我们会同步重试,异步重试的最佳做法是什么 - 假设远程服务在 10 分钟内不可用。

  1. 调用服务应该休眠,
  2. 调用服务从 fallbackMethod 返回错误响应

您能否提供一些输入,一些有用的参考。我尝试过搜索,但我得到的只是一些没有帮助的简单示例。

代码片段看起来像这样:

 @CircuitBreaker(name = MOC_RESILIENCE_SERVICE, fallbackMethod = "helloFallbakMethod")
 @Retry(name = MOC_RESILIENCE_SERVICE)
 public ResponseEntity<String> callRemoteApi(String id, String url, HttpEntity<?> entity)throws RestClientException {
   log.info("[ConsumerAPI] [callRemoteApi] id : {} Remote-Url : {}", id, url);
   return <call to remoteService()>;
 }
4

0 回答 0