public static class ClusterTopologyRefreshOptions.Builder extends Object
ClusterTopologyRefreshOptions
.public ClusterTopologyRefreshOptions.Builder enableAdaptiveRefreshTrigger(ClusterTopologyRefreshOptions.RefreshTrigger... refreshTrigger)
triggers
. Adaptive refresh triggers
initiate topology view updates based on events happened during Redis Cluster operations. Adaptive triggers lead to an
immediate topology refresh. Adaptive triggered refreshes are rate-limited using a timeout since events can happen on
a large scale. Adaptive refresh triggers are disabled by default. See also
adaptiveRefreshTriggersTimeout(long, TimeUnit)
and ClusterTopologyRefreshOptions.RefreshTrigger
.refreshTrigger
- one or more ClusterTopologyRefreshOptions.RefreshTrigger
to enabledthis
public ClusterTopologyRefreshOptions.Builder enableAllAdaptiveRefreshTriggers()
triggers
. Adaptive refresh triggers initiate
topology view updates based on events happened during Redis Cluster operations. Adaptive triggers lead to an
immediate topology refresh. Adaptive triggered refreshes are rate-limited using a timeout since events can happen on
a large scale. Adaptive refresh triggers are disabled by default. See also
adaptiveRefreshTriggersTimeout(long, TimeUnit)
and ClusterTopologyRefreshOptions.RefreshTrigger
.this
public ClusterTopologyRefreshOptions.Builder adaptiveRefreshTriggersTimeout(Duration timeout)
ClusterTopologyRefreshOptions.DEFAULT_REFRESH_PERIOD
and ClusterTopologyRefreshOptions.DEFAULT_REFRESH_PERIOD_UNIT
.timeout
- timeout for rate-limit adaptive topology updates, must be greater than 0.this
@Deprecated public ClusterTopologyRefreshOptions.Builder adaptiveRefreshTriggersTimeout(long timeout, TimeUnit unit)
adaptiveRefreshTriggersTimeout(Duration)
.ClusterTopologyRefreshOptions.DEFAULT_REFRESH_PERIOD
and ClusterTopologyRefreshOptions.DEFAULT_REFRESH_PERIOD_UNIT
.timeout
- timeout for rate-limit adaptive topology updatesunit
- unit for timeout
this
public ClusterTopologyRefreshOptions.Builder closeStaleConnections(boolean closeStaleConnections)
true
. Comes only
into effect if ClusterTopologyRefreshOptions.isPeriodicRefreshEnabled()
is true
. See
ClusterTopologyRefreshOptions.DEFAULT_CLOSE_STALE_CONNECTIONS
.closeStaleConnections
- true
if stale connections are cleaned up after cluster topology updatesthis
public ClusterTopologyRefreshOptions.Builder dynamicRefreshSources(boolean dynamicRefreshSources)
false
, only the initial seed nodes will be used as sources for topology discovery and the number of
clients will be obtained only for the initial seed nodes. This can be useful when using Redis Cluster with many
nodes. Defaults to true
. See ClusterTopologyRefreshOptions.DEFAULT_DYNAMIC_REFRESH_SOURCES
.dynamicRefreshSources
- true
to discover and query all cluster nodes for obtaining the cluster topologythis
public ClusterTopologyRefreshOptions.Builder enablePeriodicRefresh()
refreshPeriod
. Defaults to false
. See ClusterTopologyRefreshOptions.DEFAULT_PERIODIC_REFRESH_ENABLED
.this
public ClusterTopologyRefreshOptions.Builder enablePeriodicRefresh(boolean enabled)
refreshPeriod
. Defaults to false
. See ClusterTopologyRefreshOptions.DEFAULT_PERIODIC_REFRESH_ENABLED
.enabled
- true
enable regular cluster topology updates or false
to disable auto-updatingthis
public ClusterTopologyRefreshOptions.Builder enablePeriodicRefresh(Duration refreshPeriod)
ClusterTopologyRefreshOptions.DEFAULT_REFRESH_PERIOD
and ClusterTopologyRefreshOptions.DEFAULT_REFRESH_PERIOD_UNIT
. This method is a shortcut for
refreshPeriod(long, TimeUnit)
and enablePeriodicRefresh()
.refreshPeriod
- period for triggering topology updates, must be greater 0this
@Deprecated public ClusterTopologyRefreshOptions.Builder enablePeriodicRefresh(long refreshPeriod, TimeUnit refreshPeriodUnit)
enablePeriodicRefresh(Duration)
.ClusterTopologyRefreshOptions.DEFAULT_REFRESH_PERIOD
and ClusterTopologyRefreshOptions.DEFAULT_REFRESH_PERIOD_UNIT
. This method is a shortcut for
refreshPeriod(long, TimeUnit)
and enablePeriodicRefresh()
.refreshPeriod
- period for triggering topology updates, must be greater 0refreshPeriodUnit
- unit for refreshPeriod
, must not be null
this
public ClusterTopologyRefreshOptions.Builder refreshPeriod(Duration refreshPeriod)
ClusterTopologyRefreshOptions.DEFAULT_REFRESH_PERIOD
and
ClusterTopologyRefreshOptions.DEFAULT_REFRESH_PERIOD_UNIT
.refreshPeriod
- period for triggering topology updates, must be greater 0this
@Deprecated public ClusterTopologyRefreshOptions.Builder refreshPeriod(long refreshPeriod, TimeUnit refreshPeriodUnit)
refreshPeriod(Duration)
.ClusterTopologyRefreshOptions.DEFAULT_REFRESH_PERIOD
and
ClusterTopologyRefreshOptions.DEFAULT_REFRESH_PERIOD_UNIT
.refreshPeriod
- period for triggering topology updates, must be greater 0refreshPeriodUnit
- unit for refreshPeriod
, must not be null
this
public ClusterTopologyRefreshOptions.Builder refreshTriggersReconnectAttempts(int refreshTriggersReconnectAttempts)
ClusterTopologyRefreshOptions.RefreshTrigger.PERSISTENT_RECONNECTS
. Topology updates based on persistent
reconnects lead only to a refresh if the reconnect process tries at least refreshTriggersReconnectAttempts
.
See ClusterTopologyRefreshOptions.DEFAULT_REFRESH_TRIGGERS_RECONNECT_ATTEMPTS
.refreshTriggersReconnectAttempts
- number of reconnect attempts for a connection before a n adaptive topology
refresh is triggeredthis
public ClusterTopologyRefreshOptions build()
ClusterTopologyRefreshOptions
ClusterTopologyRefreshOptions
Copyright © 2021 lettuce.io. All rights reserved.