public class RetryableFeignLoadBalancer extends FeignLoadBalancer implements org.springframework.cloud.client.loadbalancer.ServiceInstanceChooser
FeignLoadBalancer
that leverages Spring Retry to retry failed requests.clientConfig, connectTimeout, readTimeout, serverIntrospector
Constructor and Description |
---|
RetryableFeignLoadBalancer(com.netflix.loadbalancer.ILoadBalancer lb,
com.netflix.client.config.IClientConfig clientConfig,
ServerIntrospector serverIntrospector,
org.springframework.cloud.client.loadbalancer.LoadBalancedRetryPolicyFactory loadBalancedRetryPolicyFactory) |
Modifier and Type | Method and Description |
---|---|
org.springframework.cloud.client.ServiceInstance |
choose(String serviceId) |
org.springframework.cloud.netflix.feign.ribbon.FeignLoadBalancer.RibbonResponse |
execute(org.springframework.cloud.netflix.feign.ribbon.FeignLoadBalancer.RibbonRequest request,
com.netflix.client.config.IClientConfig configOverride) |
com.netflix.client.RequestSpecificRetryHandler |
getRequestSpecificRetryHandler(org.springframework.cloud.netflix.feign.ribbon.FeignLoadBalancer.RibbonRequest request,
com.netflix.client.config.IClientConfig requestConfig) |
reconstructURIWithServer
executeWithLoadBalancer, executeWithLoadBalancer, isCircuitBreakerException, isRetriable, isRetriableException
deriveHostAndPortFromVipAddress, deriveSchemeAndPortFromPartialUri, generateNIWSException, getClientName, getDeepestCause, getDefaultPortFromScheme, getExecuteTracer, getLoadBalancer, getMaxAutoRetries, getMaxAutoRetriesNextServer, getNumberRetriesOnSameServer, getRetriesNextServer, getRetryHandler, getServerFromLoadBalancer, getServerStats, handleSameServerRetry, initWithNiwsConfig, isOkToRetryOnAllOperations, noteError, noteOpenConnection, noteRequestCompletion, noteRequestCompletion, noteResponse, setLoadBalancer, setMaxAutoRetries, setMaxAutoRetriesNextServer, setOkToRetryOnAllOperations, setRetryHandler
public RetryableFeignLoadBalancer(com.netflix.loadbalancer.ILoadBalancer lb, com.netflix.client.config.IClientConfig clientConfig, ServerIntrospector serverIntrospector, org.springframework.cloud.client.loadbalancer.LoadBalancedRetryPolicyFactory loadBalancedRetryPolicyFactory)
public org.springframework.cloud.netflix.feign.ribbon.FeignLoadBalancer.RibbonResponse execute(org.springframework.cloud.netflix.feign.ribbon.FeignLoadBalancer.RibbonRequest request, com.netflix.client.config.IClientConfig configOverride) throws IOException
execute
in interface com.netflix.client.IClient<org.springframework.cloud.netflix.feign.ribbon.FeignLoadBalancer.RibbonRequest,org.springframework.cloud.netflix.feign.ribbon.FeignLoadBalancer.RibbonResponse>
execute
in class FeignLoadBalancer
IOException
public com.netflix.client.RequestSpecificRetryHandler getRequestSpecificRetryHandler(org.springframework.cloud.netflix.feign.ribbon.FeignLoadBalancer.RibbonRequest request, com.netflix.client.config.IClientConfig requestConfig)
getRequestSpecificRetryHandler
in class FeignLoadBalancer
public org.springframework.cloud.client.ServiceInstance choose(String serviceId)
choose
in interface org.springframework.cloud.client.loadbalancer.ServiceInstanceChooser
Copyright © 2017 Pivotal Software, Inc.. All rights reserved.