@Experimental public final class MultiClusterClientConfig extends Object
Config which supports multiple cluster/database endpoint configurations that all share retry and circuit breaker configuration settings.
With this Config users can seamlessly failover to Disaster Recovery (DR), Backup, and Active-Active cluster(s) by using simple configuration which is passed through from Resilience4j - https://resilience4j.readme.io/docs
Configuration options related to automatic failback (e.g. HALF_OPENED state) are not supported and therefore not passed through to Jedis users.
| Modifier and Type | Class and Description |
|---|---|
static class |
MultiClusterClientConfig.Builder |
static class |
MultiClusterClientConfig.ClusterConfig |
| Constructor and Description |
|---|
MultiClusterClientConfig(MultiClusterClientConfig.ClusterConfig[] clusterConfigs) |
| Modifier and Type | Method and Description |
|---|---|
float |
getCircuitBreakerFailureRateThreshold() |
List<Class> |
getCircuitBreakerIgnoreExceptionList() |
List<Class> |
getCircuitBreakerIncludedExceptionList() |
int |
getCircuitBreakerSlidingWindowMinCalls() |
int |
getCircuitBreakerSlidingWindowSize() |
io.github.resilience4j.circuitbreaker.CircuitBreakerConfig.SlidingWindowType |
getCircuitBreakerSlidingWindowType() |
Duration |
getCircuitBreakerSlowCallDurationThreshold() |
float |
getCircuitBreakerSlowCallRateThreshold() |
MultiClusterClientConfig.ClusterConfig[] |
getClusterConfigs() |
List<Class<? extends Throwable>> |
getFallbackExceptionList() |
List<Class> |
getRetryIgnoreExceptionList() |
List<Class> |
getRetryIncludedExceptionList() |
int |
getRetryMaxAttempts() |
Duration |
getRetryWaitDuration() |
int |
getRetryWaitDurationExponentialBackoffMultiplier() |
public MultiClusterClientConfig(MultiClusterClientConfig.ClusterConfig[] clusterConfigs)
public MultiClusterClientConfig.ClusterConfig[] getClusterConfigs()
public int getRetryMaxAttempts()
public Duration getRetryWaitDuration()
public int getRetryWaitDurationExponentialBackoffMultiplier()
public float getCircuitBreakerFailureRateThreshold()
public int getCircuitBreakerSlidingWindowMinCalls()
public int getCircuitBreakerSlidingWindowSize()
public Duration getCircuitBreakerSlowCallDurationThreshold()
public float getCircuitBreakerSlowCallRateThreshold()
public io.github.resilience4j.circuitbreaker.CircuitBreakerConfig.SlidingWindowType getCircuitBreakerSlidingWindowType()
Copyright © 2024. All rights reserved.