文章目录
- CircuitBreakerStateMachine
-
- 状态转换图
- 核心流程接口介绍
-
- isCallPermitted(判断请求是否允许通过)
- onSuccess(请求调用成功处理策略)
- onError(请求调用失败即出现异常处理策略)
CircuitBreakerStateMachine
熔断器有限状态器,熔断器核心接口CircuitBreaker的实现类。
先看一段CircuitBreaker 默认接口实现代码
static <T> Supplier<T> decorateSupplier(CircuitBreaker circuitBreaker, Supplier<T> supplier){
return () -> {
//判断是否允许请求通过,不通过,抛出CircuitBreakerOpenException
CircuitBreakerUtils.isCallPermitted(circuitBreaker);
long start = System.nanoTime();
try {
//反射执行业务代码,并返回结果
T returnValue = supplier.get();
long durationInNanos = System.nanoTime() - start;
//请求处理成功,触发熔断器成功处理策略
circuitBreaker.onSuccess(durationInNanos);
版权声明:本文不是「本站」原创文章,版权归原作者所有 | 原文地址: