Enable Lettuce adaptive topology refreshes.

This commit is contained in:
Jon Chambers 2021-01-10 15:57:12 -05:00 committed by Jon Chambers
parent b70d076324
commit cc3e5d23e4
1 changed files with 8 additions and 1 deletions

View File

@ -14,6 +14,7 @@ import io.github.resilience4j.retry.Retry;
import io.lettuce.core.RedisCommandTimeoutException;
import io.lettuce.core.RedisURI;
import io.lettuce.core.cluster.ClusterClientOptions;
import io.lettuce.core.cluster.ClusterTopologyRefreshOptions;
import io.lettuce.core.cluster.RedisClusterClient;
import io.lettuce.core.cluster.api.StatefulRedisClusterConnection;
import io.lettuce.core.cluster.pubsub.StatefulRedisClusterPubSubConnection;
@ -78,7 +79,13 @@ public class FaultTolerantRedisCluster {
this.clusterClient = clusterClient;
this.clusterClient.setDefaultTimeout(commandTimeout);
this.clusterClient.setOptions(ClusterClientOptions.builder().validateClusterNodeMembership(false).build());
this.clusterClient.setOptions(ClusterClientOptions.builder()
.validateClusterNodeMembership(false)
.topologyRefreshOptions(ClusterTopologyRefreshOptions.builder()
.enablePeriodicRefresh()
.enableAllAdaptiveRefreshTriggers()
.build())
.build());
this.stringConnection = clusterClient.connect();
this.binaryConnection = clusterClient.connect(ByteArrayCodec.INSTANCE);