分布式系统中的弹性4j断路器行为



我已经将Resilience4j断路器集成到一个在K8上有多个pod的弹簧引导应用程序中。

有几个问题我需要了解

  1. 我如何从每个吊舱上的执行器跟踪断路器状态,有没有办法为其构建一个实用程序/仪表板,在本地我通过以下URL获得健康状况。http://localhost:9090/actuator/health

  2. 有一个API将禁用断路器,但如果断路器在每个吊舱上单独激活。

  • 如果我需要通过编写API在pod上禁用呼叫,我应该如何将呼叫转移到特定的pod
  • 如果我需要在所有吊舱中禁用它,应该采取什么策略

断路器库-https://resilience4j.readme.io/docs/getting-started-3

CB不负责传达致动器健康信息,因为R4J不影响当前微服务/吊舱健康,只处理其他吊舱问题。所以,如果你不能到达另一个终点。主要任务是防止您不断收到来自另一个服务的相同错误。例如,您是否应该再次请求404端点?将生成一个异常,您可以使用该异常将其重定向到其他位置。在K8S环境中,您必须重复请求,K8S服务(如果幸运的话(会将您的请求路由到一个工作pod副本。

如果所有复制副本都已关闭,则存在另一个问题。:(这与R4J无关。

您可以通过度量接收R4J状态。看看这个:https://resilience4j.readme.io/docs/micrometer

"如果我需要在所有吊舱中禁用它,应该采取什么策略"示例部署环境标志和";如果";代码中避免此块的内容。:(

最新更新