Package org.redisson.config
Class BaseMasterSlaveServersConfig<T extends BaseMasterSlaveServersConfig<T>>
- java.lang.Object
-
- org.redisson.config.BaseMasterSlaveServersConfig<T>
-
- Type Parameters:
T
- config type
- Direct Known Subclasses:
ClusterServersConfig
,MasterSlaveServersConfig
,ReplicatedServersConfig
,SentinelServersConfig
public class BaseMasterSlaveServersConfig<T extends BaseMasterSlaveServersConfig<T>> extends Object
- Author:
- Nikita Koksharov
-
-
Constructor Summary
Constructors Constructor Description BaseMasterSlaveServersConfig()
-
Method Summary
All Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description boolean
checkSkipSlavesInit()
String
getClientName()
int
getConnectTimeout()
long
getDnsMonitoringInterval()
int
getFailedSlaveCheckInterval()
int
getFailedSlaveReconnectionInterval()
int
getIdleConnectionTimeout()
LoadBalancer
getLoadBalancer()
int
getMasterConnectionMinimumIdleSize()
int
getMasterConnectionPoolSize()
String
getPassword()
int
getPingConnectionInterval()
int
getPingTimeout()
ReadMode
getReadMode()
int
getRetryAttempts()
int
getRetryInterval()
int
getSlaveConnectionMinimumIdleSize()
int
getSlaveConnectionPoolSize()
int
getSlaveSubscriptionConnectionMinimumIdleSize()
Deprecated.int
getSlaveSubscriptionConnectionPoolSize()
Deprecated.URI
getSslKeystore()
String
getSslKeystorePassword()
SslProvider
getSslProvider()
URI
getSslTruststore()
String
getSslTruststorePassword()
int
getSubscriptionConnectionMinimumIdleSize()
int
getSubscriptionConnectionPoolSize()
SubscriptionMode
getSubscriptionMode()
int
getSubscriptionsPerConnection()
int
getTimeout()
boolean
isKeepAlive()
boolean
isSslEnableEndpointIdentification()
boolean
isTcpNoDelay()
T
setClientName(String clientName)
Setup connection name during connection init via CLIENT SETNAME commandT
setConnectTimeout(int connectTimeout)
Timeout during connecting to any Redis server.T
setDnsMonitoringInterval(long dnsMonitoringInterval)
Interval in milliseconds to check the endpoint's DNST
setFailedAttempts(int slaveFailedAttempts)
Deprecated.T
setFailedSlaveCheckInterval(int slaveFailsInterval)
Redis Slave node failing to execute commands is excluded from the internal list of available nodes when the time interval from the moment of first Redis command execution failure on this server reachesslaveFailsInterval
value.T
setFailedSlaveReconnectionInterval(int failedSlavesReconnectionTimeout)
Interval of Redis Slave reconnection attempt when it was excluded from internal list of available servers.T
setIdleConnectionTimeout(int idleConnectionTimeout)
If pooled connection not used for atimeout
time and current connections amount bigger than minimum idle connections pool size, then it will closed and removed from pool.T
setKeepAlive(boolean keepAlive)
Enables TCP keepAlive for connectionT
setLoadBalancer(LoadBalancer loadBalancer)
Сonnection load balancer to multiple Redis slave servers.T
setMasterConnectionMinimumIdleSize(int masterConnectionMinimumIdleSize)
Redis 'master' node minimum idle connection amount for each slave nodeT
setMasterConnectionPoolSize(int masterConnectionPoolSize)
Redis 'master' server connection pool size.T
setPassword(String password)
Password for Redis authentication.T
setPingConnectionInterval(int pingConnectionInterval)
Defines PING command sending interval per connection to Redis.T
setPingTimeout(int pingTimeout)
Ping timeout used inNode.ping
andNode.pingAll
operationT
setReadMode(ReadMode readMode)
Set node type used for read operation.T
setReconnectionTimeout(int slaveRetryTimeout)
Deprecated.T
setRetryAttempts(int retryAttempts)
Error will be thrown if Redis command can't be sent to Redis server afterretryAttempts
.T
setRetryInterval(int retryInterval)
Defines time interval for another one attempt send Redis command if it hasn't been sent already.T
setSlaveConnectionMinimumIdleSize(int slaveConnectionMinimumIdleSize)
Redis 'slave' node minimum idle connection amount for each slave nodeT
setSlaveConnectionPoolSize(int slaveConnectionPoolSize)
Redis 'slave' servers connection pool size for each slave node.T
setSlaveSubscriptionConnectionMinimumIdleSize(int slaveSubscriptionConnectionMinimumIdleSize)
Deprecated.T
setSlaveSubscriptionConnectionPoolSize(int slaveSubscriptionConnectionPoolSize)
Deprecated.T
setSslEnableEndpointIdentification(boolean sslEnableEndpointIdentification)
Enables SSL endpoint identification.T
setSslKeystore(URI sslKeystore)
Defines path to SSL keystoreT
setSslKeystorePassword(String sslKeystorePassword)
Defines password for SSL keystoreT
setSslProvider(SslProvider sslProvider)
Defines SSL provider used to handle SSL connections.T
setSslTruststore(URI sslTruststore)
Defines path to SSL truststoreT
setSslTruststorePassword(String sslTruststorePassword)
Defines password for SSL truststoreT
setSubscriptionConnectionMinimumIdleSize(int subscriptionConnectionMinimumIdleSize)
Redis 'slave' node minimum idle subscription (pub/sub) connection amount for each slave node.T
setSubscriptionConnectionPoolSize(int subscriptionConnectionPoolSize)
Redis 'slave' node maximum subscription (pub/sub) connection pool size for each slave nodeT
setSubscriptionMode(SubscriptionMode subscriptionMode)
Set node type used for subscription operation.T
setSubscriptionsPerConnection(int subscriptionsPerConnection)
Subscriptions per Redis connection limit Default is 5T
setTcpNoDelay(boolean tcpNoDelay)
Enables TCP noDelay for connectionT
setTimeout(int timeout)
Redis server response timeout.
-
-
-
Method Detail
-
setSlaveConnectionPoolSize
public T setSlaveConnectionPoolSize(int slaveConnectionPoolSize)
Redis 'slave' servers connection pool size for each slave node.Default is
64
- Parameters:
slaveConnectionPoolSize
- - size of pool- Returns:
- config
- See Also:
setSlaveConnectionMinimumIdleSize(int)
-
getSlaveConnectionPoolSize
public int getSlaveConnectionPoolSize()
-
setFailedSlaveReconnectionInterval
public T setFailedSlaveReconnectionInterval(int failedSlavesReconnectionTimeout)
Interval of Redis Slave reconnection attempt when it was excluded from internal list of available servers.On every such timeout event Redisson tries to connect to disconnected Redis server.
Default is 3000
- Parameters:
failedSlavesReconnectionTimeout
- - retry timeout in milliseconds- Returns:
- config
-
getFailedSlaveReconnectionInterval
public int getFailedSlaveReconnectionInterval()
-
setFailedSlaveCheckInterval
public T setFailedSlaveCheckInterval(int slaveFailsInterval)
Redis Slave node failing to execute commands is excluded from the internal list of available nodes when the time interval from the moment of first Redis command execution failure on this server reachesslaveFailsInterval
value.Default is
180000
- Parameters:
slaveFailsInterval
- - time interval in milliseconds- Returns:
- config
-
getFailedSlaveCheckInterval
public int getFailedSlaveCheckInterval()
-
setMasterConnectionPoolSize
public T setMasterConnectionPoolSize(int masterConnectionPoolSize)
Redis 'master' server connection pool size.Default is
64
- Parameters:
masterConnectionPoolSize
- - pool size- Returns:
- config
- See Also:
setMasterConnectionMinimumIdleSize(int)
-
getMasterConnectionPoolSize
public int getMasterConnectionPoolSize()
-
setLoadBalancer
public T setLoadBalancer(LoadBalancer loadBalancer)
Сonnection load balancer to multiple Redis slave servers. Uses Round-robin algorithm by default- Parameters:
loadBalancer
- object- Returns:
- config
- See Also:
RandomLoadBalancer
,RoundRobinLoadBalancer
,WeightedRoundRobinBalancer
-
getLoadBalancer
public LoadBalancer getLoadBalancer()
-
setSlaveSubscriptionConnectionPoolSize
@Deprecated public T setSlaveSubscriptionConnectionPoolSize(int slaveSubscriptionConnectionPoolSize)
Deprecated.- Parameters:
slaveSubscriptionConnectionPoolSize
- - pool size- Returns:
- config
-
getSlaveSubscriptionConnectionPoolSize
@Deprecated public int getSlaveSubscriptionConnectionPoolSize()
Deprecated.
-
setSubscriptionConnectionPoolSize
public T setSubscriptionConnectionPoolSize(int subscriptionConnectionPoolSize)
Redis 'slave' node maximum subscription (pub/sub) connection pool size for each slave nodeDefault is
50
- Parameters:
subscriptionConnectionPoolSize
- - pool size- Returns:
- config
- See Also:
setSubscriptionConnectionMinimumIdleSize(int)
-
getSubscriptionConnectionPoolSize
public int getSubscriptionConnectionPoolSize()
-
setSlaveConnectionMinimumIdleSize
public T setSlaveConnectionMinimumIdleSize(int slaveConnectionMinimumIdleSize)
Redis 'slave' node minimum idle connection amount for each slave nodeDefault is
10
- Parameters:
slaveConnectionMinimumIdleSize
- - pool size- Returns:
- config
- See Also:
setSlaveConnectionPoolSize(int)
-
getSlaveConnectionMinimumIdleSize
public int getSlaveConnectionMinimumIdleSize()
-
setMasterConnectionMinimumIdleSize
public T setMasterConnectionMinimumIdleSize(int masterConnectionMinimumIdleSize)
Redis 'master' node minimum idle connection amount for each slave nodeDefault is
10
- Parameters:
masterConnectionMinimumIdleSize
- - pool size- Returns:
- config
- See Also:
setMasterConnectionPoolSize(int)
-
getMasterConnectionMinimumIdleSize
public int getMasterConnectionMinimumIdleSize()
-
setSlaveSubscriptionConnectionMinimumIdleSize
@Deprecated public T setSlaveSubscriptionConnectionMinimumIdleSize(int slaveSubscriptionConnectionMinimumIdleSize)
Deprecated.- Parameters:
slaveSubscriptionConnectionMinimumIdleSize
- - pool size- Returns:
- config
-
getSlaveSubscriptionConnectionMinimumIdleSize
@Deprecated public int getSlaveSubscriptionConnectionMinimumIdleSize()
Deprecated.
-
setSubscriptionConnectionMinimumIdleSize
public T setSubscriptionConnectionMinimumIdleSize(int subscriptionConnectionMinimumIdleSize)
Redis 'slave' node minimum idle subscription (pub/sub) connection amount for each slave node.Default is
1
- Parameters:
subscriptionConnectionMinimumIdleSize
- - pool size- Returns:
- config
- See Also:
setSubscriptionConnectionPoolSize(int)
-
getSubscriptionConnectionMinimumIdleSize
public int getSubscriptionConnectionMinimumIdleSize()
-
setReadMode
public T setReadMode(ReadMode readMode)
Set node type used for read operation.Default is
SLAVE
- Parameters:
readMode
- param- Returns:
- config
-
getReadMode
public ReadMode getReadMode()
-
checkSkipSlavesInit
public boolean checkSkipSlavesInit()
-
setSubscriptionMode
public T setSubscriptionMode(SubscriptionMode subscriptionMode)
Set node type used for subscription operation.Default is
MASTER
- Parameters:
subscriptionMode
- param- Returns:
- config
-
getSubscriptionMode
public SubscriptionMode getSubscriptionMode()
-
setDnsMonitoringInterval
public T setDnsMonitoringInterval(long dnsMonitoringInterval)
Interval in milliseconds to check the endpoint's DNSApplications must ensure the JVM DNS cache TTL is low enough to support this.
Set
-1
to disable.Default is
5000
.- Parameters:
dnsMonitoringInterval
- time- Returns:
- config
-
getDnsMonitoringInterval
public long getDnsMonitoringInterval()
-
setSubscriptionsPerConnection
public T setSubscriptionsPerConnection(int subscriptionsPerConnection)
Subscriptions per Redis connection limit Default is 5- Parameters:
subscriptionsPerConnection
- amount- Returns:
- config
-
getSubscriptionsPerConnection
public int getSubscriptionsPerConnection()
-
setPassword
public T setPassword(String password)
Password for Redis authentication. Should be null if not needed Default isnull
- Parameters:
password
- for connection- Returns:
- config
-
getPassword
public String getPassword()
-
setRetryAttempts
public T setRetryAttempts(int retryAttempts)
Error will be thrown if Redis command can't be sent to Redis server afterretryAttempts
. But if it sent successfully thentimeout
will be started.Default is
3
attempts- Parameters:
retryAttempts
- - retry attempts- Returns:
- config
- See Also:
timeout
-
getRetryAttempts
public int getRetryAttempts()
-
setRetryInterval
public T setRetryInterval(int retryInterval)
Defines time interval for another one attempt send Redis command if it hasn't been sent already.Default is
1500
milliseconds- Parameters:
retryInterval
- - time in milliseconds- Returns:
- config
- See Also:
BaseConfig.retryAttempts
-
getRetryInterval
public int getRetryInterval()
-
setTimeout
public T setTimeout(int timeout)
Redis server response timeout. Starts to countdown when Redis command has been successfully sent.Default is
3000
milliseconds- Parameters:
timeout
- in milliseconds- Returns:
- config
-
getTimeout
public int getTimeout()
-
setClientName
public T setClientName(String clientName)
Setup connection name during connection init via CLIENT SETNAME command- Parameters:
clientName
- - name of client- Returns:
- config
-
getClientName
public String getClientName()
-
setPingTimeout
public T setPingTimeout(int pingTimeout)
Ping timeout used inNode.ping
andNode.pingAll
operation- Parameters:
pingTimeout
- - timeout in milliseconds- Returns:
- config
-
getPingTimeout
public int getPingTimeout()
-
setConnectTimeout
public T setConnectTimeout(int connectTimeout)
Timeout during connecting to any Redis server.Default is
10000
milliseconds.- Parameters:
connectTimeout
- - timeout in milliseconds- Returns:
- config
-
getConnectTimeout
public int getConnectTimeout()
-
setIdleConnectionTimeout
public T setIdleConnectionTimeout(int idleConnectionTimeout)
If pooled connection not used for atimeout
time and current connections amount bigger than minimum idle connections pool size, then it will closed and removed from pool.- Parameters:
idleConnectionTimeout
- - timeout in milliseconds- Returns:
- config
-
getIdleConnectionTimeout
public int getIdleConnectionTimeout()
-
setReconnectionTimeout
@Deprecated public T setReconnectionTimeout(int slaveRetryTimeout)
Deprecated.
-
setFailedAttempts
@Deprecated public T setFailedAttempts(int slaveFailedAttempts)
Deprecated.
-
isSslEnableEndpointIdentification
public boolean isSslEnableEndpointIdentification()
-
setSslEnableEndpointIdentification
public T setSslEnableEndpointIdentification(boolean sslEnableEndpointIdentification)
Enables SSL endpoint identification.Default is
true
- Parameters:
sslEnableEndpointIdentification
- - boolean value- Returns:
- config
-
getSslProvider
public SslProvider getSslProvider()
-
setSslProvider
public T setSslProvider(SslProvider sslProvider)
Defines SSL provider used to handle SSL connections.Default is JDK
- Parameters:
sslProvider
- - ssl provider- Returns:
- config
-
getSslTruststore
public URI getSslTruststore()
-
setSslTruststore
public T setSslTruststore(URI sslTruststore)
Defines path to SSL truststore- Parameters:
sslTruststore
- - path- Returns:
- config
-
getSslTruststorePassword
public String getSslTruststorePassword()
-
setSslTruststorePassword
public T setSslTruststorePassword(String sslTruststorePassword)
Defines password for SSL truststore- Parameters:
sslTruststorePassword
- - password- Returns:
- config
-
getSslKeystore
public URI getSslKeystore()
-
setSslKeystore
public T setSslKeystore(URI sslKeystore)
Defines path to SSL keystore- Parameters:
sslKeystore
- - path to keystore- Returns:
- config
-
getSslKeystorePassword
public String getSslKeystorePassword()
-
setSslKeystorePassword
public T setSslKeystorePassword(String sslKeystorePassword)
Defines password for SSL keystore- Parameters:
sslKeystorePassword
- - password- Returns:
- config
-
getPingConnectionInterval
public int getPingConnectionInterval()
-
setPingConnectionInterval
public T setPingConnectionInterval(int pingConnectionInterval)
Defines PING command sending interval per connection to Redis.0
means disable.Default is
0
- Parameters:
pingConnectionInterval
- - time in milliseconds- Returns:
- config
-
isKeepAlive
public boolean isKeepAlive()
-
setKeepAlive
public T setKeepAlive(boolean keepAlive)
Enables TCP keepAlive for connectionDefault is
false
- Parameters:
keepAlive
- - boolean value- Returns:
- config
-
isTcpNoDelay
public boolean isTcpNoDelay()
-
setTcpNoDelay
public T setTcpNoDelay(boolean tcpNoDelay)
Enables TCP noDelay for connectionDefault is
false
- Parameters:
tcpNoDelay
- - boolean value- Returns:
- config
-
-