|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectnet.spy.memcached.compat.SpyObject
net.spy.memcached.DefaultConnectionFactory
public class DefaultConnectionFactory
Default implementation of ConnectionFactory.
This implementation creates connections where the operation queue is an
ArrayBlockingQueue and the read and write queues are unbounded
LinkedBlockingQueues. The Redistribute FailureMode is always
used. If other FailureModes are needed, look at the ConnectionFactoryBuilder.
| Field Summary | |
|---|---|
static FailureMode |
DEFAULT_FAILURE_MODE
Default failure mode. |
static HashAlgorithm |
DEFAULT_HASH
Default hash algorithm. |
static long |
DEFAULT_MAX_RECONNECT_DELAY
Maximum amount of time (in seconds) to wait between reconnect attempts. |
static int |
DEFAULT_MAX_TIMEOUTEXCEPTION_THRESHOLD
Maximum number + 2 of timeout exception for shutdown connection. |
static int |
DEFAULT_OP_QUEUE_LEN
Maximum length of the operation queue returned by this connection factory. |
static long |
DEFAULT_OP_QUEUE_MAX_BLOCK_TIME
The maximum time to block waiting for op queue operations to complete, in milliseconds. |
static long |
DEFAULT_OPERATION_TIMEOUT
Default operation timeout in milliseconds. |
static int |
DEFAULT_READ_BUFFER_SIZE
The read buffer size for each server connection from this factory. |
protected int |
opQueueLen
|
| Constructor Summary | |
|---|---|
DefaultConnectionFactory()
Create a DefaultConnectionFactory with the default parameters. |
|
DefaultConnectionFactory(int qLen,
int bufSize)
Create a DefaultConnectionFactory with the given maximum operation queue length, and the given read buffer size. |
|
DefaultConnectionFactory(int qLen,
int bufSize,
HashAlgorithm hash)
Construct a DefaultConnectionFactory with the given parameters. |
|
| Method Summary | |
|---|---|
MemcachedConnection |
createConnection(java.util.List<java.net.InetSocketAddress> addrs)
Create a MemcachedConnection for the given SocketAddresses. |
NodeLocator |
createLocator(java.util.List<MemcachedNode> nodes)
Create a NodeLocator instance for the given list of nodes. |
MemcachedNode |
createMemcachedNode(java.net.SocketAddress sa,
java.nio.channels.SocketChannel c,
int bufSize)
Create a new memcached node. |
java.util.concurrent.BlockingQueue<Operation> |
createOperationQueue()
Create a BlockingQueue for operations for a connection. |
java.util.concurrent.BlockingQueue<Operation> |
createReadOperationQueue()
Create a BlockingQueue for the operations currently expecting to read responses from memcached. |
java.util.concurrent.BlockingQueue<Operation> |
createWriteOperationQueue()
Create a BlockingQueue for the operations currently expecting to write requests to memcached. |
AuthDescriptor |
getAuthDescriptor()
Authenticate connections using the given auth descriptor. |
Transcoder<java.lang.Object> |
getDefaultTranscoder()
Get the default transcoder to be used in connections created by this factory. |
FailureMode |
getFailureMode()
Get the default failure mode for the underlying connection. |
HashAlgorithm |
getHashAlg()
Get the hash algorithm to be used. |
java.util.Collection<ConnectionObserver> |
getInitialObservers()
Observers that should be established at the time of connection instantiation. |
long |
getMaxReconnectDelay()
Maximum number of milliseconds to wait between reconnect attempts. |
protected java.lang.String |
getName()
|
OperationFactory |
getOperationFactory()
Get the operation factory for connections built by this connection factory. |
long |
getOperationTimeout()
Get the operation timeout used by this connection. |
int |
getOpQueueLen()
Get the op queue length set at construct time. |
long |
getOpQueueMaxBlockTime()
Get the maximum amount of time (in milliseconds) a client is willing to wait to add a new item to a queue. |
int |
getReadBufSize()
|
int |
getTimeoutExceptionThreshold()
Maximum number of timeout exception for shutdown connection. |
boolean |
isDaemon()
If true, the IO thread should be a daemon thread. |
boolean |
shouldOptimize()
If true, low-level optimization is in effect. |
java.lang.String |
toString()
|
boolean |
useNagleAlgorithm()
If true, the nagle algorithm will be used on connected sockets. |
| Methods inherited from class net.spy.memcached.compat.SpyObject |
|---|
getLogger |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Field Detail |
|---|
public static final FailureMode DEFAULT_FAILURE_MODE
public static final HashAlgorithm DEFAULT_HASH
public static final int DEFAULT_OP_QUEUE_LEN
public static final long DEFAULT_OP_QUEUE_MAX_BLOCK_TIME
public static final int DEFAULT_READ_BUFFER_SIZE
public static final long DEFAULT_OPERATION_TIMEOUT
public static final long DEFAULT_MAX_RECONNECT_DELAY
public static final int DEFAULT_MAX_TIMEOUTEXCEPTION_THRESHOLD
protected final int opQueueLen
| Constructor Detail |
|---|
public DefaultConnectionFactory(int qLen,
int bufSize,
HashAlgorithm hash)
qLen - the queue length.bufSize - the buffer sizehash - the algorithm to use for hashing
public DefaultConnectionFactory(int qLen,
int bufSize)
public DefaultConnectionFactory()
| Method Detail |
|---|
public MemcachedNode createMemcachedNode(java.net.SocketAddress sa,
java.nio.channels.SocketChannel c,
int bufSize)
ConnectionFactory
createMemcachedNode in interface ConnectionFactory
public MemcachedConnection createConnection(java.util.List<java.net.InetSocketAddress> addrs)
throws java.io.IOException
ConnectionFactory
createConnection in interface ConnectionFactoryaddrs - the addresses of the memcached servers
java.io.IOException - for problems initializing the memcached connectionspublic FailureMode getFailureMode()
ConnectionFactory
getFailureMode in interface ConnectionFactorypublic java.util.concurrent.BlockingQueue<Operation> createOperationQueue()
ConnectionFactory
createOperationQueue in interface ConnectionFactorypublic java.util.concurrent.BlockingQueue<Operation> createReadOperationQueue()
ConnectionFactory
createReadOperationQueue in interface ConnectionFactorypublic java.util.concurrent.BlockingQueue<Operation> createWriteOperationQueue()
ConnectionFactory
createWriteOperationQueue in interface ConnectionFactorypublic NodeLocator createLocator(java.util.List<MemcachedNode> nodes)
ConnectionFactory
createLocator in interface ConnectionFactorypublic int getOpQueueLen()
public long getOpQueueMaxBlockTime()
ConnectionFactory
getOpQueueMaxBlockTime in interface ConnectionFactorypublic int getReadBufSize()
getReadBufSize in interface ConnectionFactorypublic HashAlgorithm getHashAlg()
ConnectionFactory
getHashAlg in interface ConnectionFactorypublic OperationFactory getOperationFactory()
ConnectionFactory
getOperationFactory in interface ConnectionFactorypublic long getOperationTimeout()
ConnectionFactory
getOperationTimeout in interface ConnectionFactorypublic boolean isDaemon()
ConnectionFactory
isDaemon in interface ConnectionFactorypublic java.util.Collection<ConnectionObserver> getInitialObservers()
ConnectionFactory
getInitialObservers in interface ConnectionFactorypublic Transcoder<java.lang.Object> getDefaultTranscoder()
ConnectionFactory
getDefaultTranscoder in interface ConnectionFactorypublic boolean useNagleAlgorithm()
ConnectionFactory
See Socket.setTcpNoDelay(boolean) for more information.
useNagleAlgorithm in interface ConnectionFactorypublic boolean shouldOptimize()
ConnectionFactory
shouldOptimize in interface ConnectionFactorypublic long getMaxReconnectDelay()
ConnectionFactory
getMaxReconnectDelay in interface ConnectionFactorypublic AuthDescriptor getAuthDescriptor()
ConnectionFactory
getAuthDescriptor in interface ConnectionFactorypublic int getTimeoutExceptionThreshold()
ConnectionFactory
getTimeoutExceptionThreshold in interface ConnectionFactoryprotected java.lang.String getName()
public java.lang.String toString()
toString in class java.lang.Object
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||