public class SocketOptions extends Object
| Modifier and Type | Field and Description |
|---|---|
static int |
DEFAULT_CONNECT_TIMEOUT_MILLIS
The default connection timeout in milliseconds if none is set explicitly
using
setConnectTimeoutMillis(int). |
static int |
DEFAULT_READ_TIMEOUT_MILLIS
The default read timeout in milliseconds if none is set explicitly
using
setReadTimeoutMillis(int). |
| Constructor and Description |
|---|
SocketOptions()
Creates a new
SocketOptions instance with default values. |
| Modifier and Type | Method and Description |
|---|---|
int |
getConnectTimeoutMillis()
The connection timeout in milliseconds.
|
Boolean |
getKeepAlive()
Returns whether TCP keepalive is enabled.
|
int |
getReadTimeoutMillis()
The per-host read timeout in milliseconds.
|
Integer |
getReceiveBufferSize()
Returns the hint to the size of the underlying buffers for incoming network I/O.
|
Boolean |
getReuseAddress()
Returns whether reuse-address is enabled.
|
Integer |
getSendBufferSize()
Returns the hint to the size of the underlying buffers for outgoing network I/O.
|
Integer |
getSoLinger()
Returns the linger-on-close timeout.
|
Boolean |
getTcpNoDelay()
Returns whether Nagle's algorithm is disabled.
|
SocketOptions |
setConnectTimeoutMillis(int connectTimeoutMillis)
Sets the connection timeout in milliseconds.
|
SocketOptions |
setKeepAlive(boolean keepAlive)
Sets whether to enable TCP keepalive.
|
SocketOptions |
setReadTimeoutMillis(int readTimeoutMillis)
Sets the per-host read timeout in milliseconds.
|
SocketOptions |
setReceiveBufferSize(int receiveBufferSize)
Sets a hint to the size of the underlying buffers for incoming network I/O.
|
SocketOptions |
setReuseAddress(boolean reuseAddress)
Sets whether to enable reuse-address.
|
SocketOptions |
setSendBufferSize(int sendBufferSize)
Sets a hint to the size of the underlying buffers for outgoing network I/O.
|
SocketOptions |
setSoLinger(int soLinger)
Sets the linger-on-close timeout.
|
SocketOptions |
setTcpNoDelay(boolean tcpNoDelay)
Sets whether to disable Nagle's algorithm.
|
public static final int DEFAULT_CONNECT_TIMEOUT_MILLIS
setConnectTimeoutMillis(int).
That default is of 5 seconds.public static final int DEFAULT_READ_TIMEOUT_MILLIS
setReadTimeoutMillis(int).
That default is of 12 seconds so as to be slightly bigger that the
default Cassandra timeout.public SocketOptions()
SocketOptions instance with default values.public int getConnectTimeoutMillis()
public SocketOptions setConnectTimeoutMillis(int connectTimeoutMillis)
DEFAULT_CONNECT_TIMEOUT_MILLIS.connectTimeoutMillis - the timeout to set.SocketOptions.public int getReadTimeoutMillis()
Session.execute(java.lang.String) may block;
this is the maximum time that a call will wait for one particular
Cassandra host, but other hosts could be tried if one of them times out, depending
on the RetryPolicy in use. In
other words, a Session.execute(java.lang.String) call may theoretically wait up to
getReadTimeoutMillis() * <number_of_cassandra_hosts> (though the
total number of hosts tried for a given query also depends on the
LoadBalancingPolicy in use).
If you want to control how long to wait for a query, use Session.executeAsync(java.lang.String)
and the ResultSetFuture#get(long, TimeUnit) method.
Also note that for efficiency reasons, this read timeout is approximate: it
has an accuracy of up to 100 milliseconds (i.e. it may fire up to 100 milliseconds late).
It is not meant to be used for precise timeout, but rather as a protection
against misbehaving Cassandra nodes.
public SocketOptions setReadTimeoutMillis(int readTimeoutMillis)
*_request_timeout_in_ms in cassandra.yaml).getReadTimeoutMillis() for more details). If a
high level of precision on the timeout to a request is required, you should use
the Future.get(long, java.util.concurrent.TimeUnit) method.
DEFAULT_READ_TIMEOUT_MILLIS.readTimeoutMillis - the timeout to set. If it is less than or equal to 0, read timeouts are disabled.SocketOptions.public Boolean getKeepAlive()
null if it is not set.setKeepAlive(boolean)public SocketOptions setKeepAlive(boolean keepAlive)
keepAlive - whether to enable or disable the option.SocketOptions.SocketOptions.TCP_NODELAYpublic Boolean getReuseAddress()
null if it is not set.setReuseAddress(boolean)public SocketOptions setReuseAddress(boolean reuseAddress)
reuseAddress - whether to enable or disable the option.SocketOptions.SocketOptions.SO_REUSEADDRpublic Integer getSoLinger()
null if it is not set.setSoLinger(int)public SocketOptions setSoLinger(int soLinger)
soLinger - the new value.SocketOptions.SocketOptions.SO_LINGERpublic Boolean getTcpNoDelay()
true means Nagle is disabled), or null if it is not set.setTcpNoDelay(boolean)public SocketOptions setTcpNoDelay(boolean tcpNoDelay)
true (Nagle disabled).tcpNoDelay - whether to enable or disable the option.SocketOptions.SocketOptions.TCP_NODELAYpublic Integer getReceiveBufferSize()
null if it is not set.setReceiveBufferSize(int)public SocketOptions setReceiveBufferSize(int receiveBufferSize)
receiveBufferSize - the new value.SocketOptions.SocketOptions.SO_RCVBUFpublic Integer getSendBufferSize()
null if it is not set.setSendBufferSize(int)public SocketOptions setSendBufferSize(int sendBufferSize)
sendBufferSize - the new value.SocketOptions.SocketOptions.SO_SNDBUFCopyright © 2012–2018. All rights reserved.