Package net.rubyeye.xmemcached.impl
Class Optimizer
- java.lang.Object
-
- net.rubyeye.xmemcached.impl.Optimizer
-
- All Implemented Interfaces:
OptimizerMBean,MemcachedOptimizer
public class Optimizer extends Object implements OptimizerMBean, MemcachedOptimizer
Memcached command optimizer,merge single-get comands to multi-get command, merge ByteBuffers to fit the socket's sendBufferSize etc.- Author:
- dennis
-
-
Field Summary
Fields Modifier and Type Field Description static intDEFAULT_MERGE_FACTOR
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description List<Command>getLocalList()intgetMergeFactor()booleanisOptimizeGet()booleanisOptimizeMergeBuffer()CommandoptimiezeGet(Queue writeQueue, Queue<Command> executingCmds, Command optimiezeCommand)Merge get operation to multi-get operationCommandoptimiezeMergeBuffer(Command optimiezeCommand, Queue writeQueue, Queue<Command> executingCmds, int sendBufferSize)merge buffers to fit socket's send buffer sizeCommandoptimiezeSet(Queue writeQueue, Queue<Command> executingCmds, Command optimiezeCommand, int sendBufferSize)Commandoptimize(Command currentCommand, Queue writeQueue, Queue<Command> executingCmds, int sendBufferSize)voidsetBufferAllocator(BufferAllocator bufferAllocator)voidsetMergeFactor(int mergeFactor)voidsetOptimizeGet(boolean optimiezeGet)voidsetOptimizeMergeBuffer(boolean optimiezeMergeBuffer)
-
-
-
Field Detail
-
DEFAULT_MERGE_FACTOR
public static final int DEFAULT_MERGE_FACTOR
- See Also:
- Constant Field Values
-
-
Constructor Detail
-
Optimizer
public Optimizer(Protocol protocol)
-
-
Method Detail
-
setBufferAllocator
public void setBufferAllocator(BufferAllocator bufferAllocator)
- Specified by:
setBufferAllocatorin interfaceMemcachedOptimizer
-
getMergeFactor
public int getMergeFactor()
- Specified by:
getMergeFactorin interfaceOptimizerMBean
-
setMergeFactor
public void setMergeFactor(int mergeFactor)
- Specified by:
setMergeFactorin interfaceOptimizerMBean
-
isOptimizeGet
public boolean isOptimizeGet()
- Specified by:
isOptimizeGetin interfaceOptimizerMBean
-
setOptimizeGet
public void setOptimizeGet(boolean optimiezeGet)
- Specified by:
setOptimizeGetin interfaceOptimizerMBean
-
isOptimizeMergeBuffer
public boolean isOptimizeMergeBuffer()
- Specified by:
isOptimizeMergeBufferin interfaceOptimizerMBean
-
setOptimizeMergeBuffer
public void setOptimizeMergeBuffer(boolean optimiezeMergeBuffer)
- Specified by:
setOptimizeMergeBufferin interfaceOptimizerMBean
-
optimize
public Command optimize(Command currentCommand, Queue writeQueue, Queue<Command> executingCmds, int sendBufferSize)
- Specified by:
optimizein interfaceMemcachedOptimizer
-
optimiezeMergeBuffer
public final Command optimiezeMergeBuffer(Command optimiezeCommand, Queue writeQueue, Queue<Command> executingCmds, int sendBufferSize)
merge buffers to fit socket's send buffer size- Parameters:
currentCommand-- Returns:
- Throws:
InterruptedException
-
optimiezeGet
public final Command optimiezeGet(Queue writeQueue, Queue<Command> executingCmds, Command optimiezeCommand)
Merge get operation to multi-get operation- Parameters:
currentCmd-mergeCommands-- Returns:
- Throws:
InterruptedException
-
optimiezeSet
public final Command optimiezeSet(Queue writeQueue, Queue<Command> executingCmds, Command optimiezeCommand, int sendBufferSize)
-
-