public class CircuitBreakerClient extends AbstractCircuitBreakerClient<HttpRequest,HttpResponse> implements HttpClient
HttpClient decorator that handles failures of HTTP requests based on circuit breaker pattern.execute, reportSuccessOrFailure, strategy, strategyWithContentas, delegate, toStringclone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitexecutepublic static Function<? super HttpClient,CircuitBreakerClient> newDecorator(CircuitBreaker circuitBreaker, CircuitBreakerStrategy strategy)
CircuitBreaker instance and
CircuitBreakerStrategy.
Since CircuitBreaker is a unit of failure detection, don't reuse the same instance for
unrelated services.
public static Function<? super HttpClient,CircuitBreakerClient> newDecorator(CircuitBreakerMapping mapping, CircuitBreakerStrategy strategy)
CircuitBreakerMapping and
CircuitBreakerStrategy.
Since CircuitBreaker is a unit of failure detection, don't reuse the same instance for
unrelated services.
public static Function<? super HttpClient,CircuitBreakerClient> newPerMethodDecorator(Function<String,CircuitBreaker> factory, CircuitBreakerStrategy strategy)
CircuitBreaker per HttpMethod with the specified
CircuitBreakerStrategy.
Since CircuitBreaker is a unit of failure detection, don't reuse the same instance for
unrelated services.
factory - a function that takes an HttpMethod and creates a new CircuitBreakerpublic static Function<? super HttpClient,CircuitBreakerClient> newPerHostDecorator(Function<String,CircuitBreaker> factory, CircuitBreakerStrategy strategy)
CircuitBreaker per host with the specified
CircuitBreakerStrategy.
Since CircuitBreaker is a unit of failure detection, don't reuse the same instance for
unrelated services.
factory - a function that takes a host name and creates a new CircuitBreakerpublic static Function<? super HttpClient,CircuitBreakerClient> newPerHostAndMethodDecorator(Function<String,CircuitBreaker> factory, CircuitBreakerStrategy strategy)
CircuitBreaker per host and HttpMethod with
the specified CircuitBreakerStrategy.
Since CircuitBreaker is a unit of failure detection, don't reuse the same instance for
unrelated services.
factory - a function that takes a host+method and creates a new CircuitBreakerpublic static CircuitBreakerClientBuilder builder(CircuitBreakerStrategy strategy)
CircuitBreakerClientBuilder with
the specified CircuitBreakerStrategy.public static CircuitBreakerClientBuilder builder(CircuitBreakerStrategyWithContent<HttpResponse> strategyWithContent)
CircuitBreakerClientBuilder with
the specified CircuitBreakerStrategyWithContent.protected HttpResponse doExecute(ClientRequestContext ctx, HttpRequest req, CircuitBreaker circuitBreaker) throws Exception
AbstractCircuitBreakerClientCircuitBreaker is in closed state.doExecute in class AbstractCircuitBreakerClient<HttpRequest,HttpResponse>ExceptionCopyright © 2020 LeanCloud. All rights reserved.