Package org.apache.hadoop.hbase.ipc
Class BalancedQueueRpcExecutor
java.lang.Object
org.apache.hadoop.hbase.ipc.RpcExecutor
org.apache.hadoop.hbase.ipc.BalancedQueueRpcExecutor
- Direct Known Subclasses:
FastPathBalancedQueueRpcExecutor
@LimitedPrivate({"Coprocesssor","Phoenix"})
@Evolving
public class BalancedQueueRpcExecutor
extends RpcExecutor
An
RpcExecutor
that will balance requests evenly across all its queues, but still remains
efficient with a single queue via an inlinable queue balancing mechanism. Defaults to FIFO but
you can pass an alternate queue class to use.-
Field Summary
Fields inherited from class org.apache.hadoop.hbase.ipc.RpcExecutor
CALL_QUEUE_CODEL_DEFAULT_INTERVAL, CALL_QUEUE_CODEL_DEFAULT_LIFO_THRESHOLD, CALL_QUEUE_CODEL_DEFAULT_TARGET_DELAY, CALL_QUEUE_CODEL_INTERVAL, CALL_QUEUE_CODEL_LIFO_THRESHOLD, CALL_QUEUE_CODEL_TARGET_DELAY, CALL_QUEUE_HANDLER_FACTOR_CONF_KEY, CALL_QUEUE_QUEUE_BALANCER_CLASS, CALL_QUEUE_QUEUE_BALANCER_CLASS_DEFAULT, CALL_QUEUE_TYPE_CODEL_CONF_VALUE, CALL_QUEUE_TYPE_CONF_DEFAULT, CALL_QUEUE_TYPE_CONF_KEY, CALL_QUEUE_TYPE_DEADLINE_CONF_VALUE, CALL_QUEUE_TYPE_FIFO_CONF_VALUE, CALL_QUEUE_TYPE_PLUGGABLE_CONF_VALUE, currentQueueLimit, DEFAULT_CALL_QUEUE_SIZE_HARD_LIMIT, numCallQueues, PLUGGABLE_CALL_QUEUE_CLASS_NAME, PLUGGABLE_CALL_QUEUE_WITH_FAST_PATH_ENABLED, QUEUE_MAX_CALL_DELAY_CONF_KEY, queues
-
Constructor Summary
ConstructorDescriptionBalancedQueueRpcExecutor
(String name, int handlerCount, int maxQueueLength, PriorityFunction priority, org.apache.hadoop.conf.Configuration conf, Abortable abortable) BalancedQueueRpcExecutor
(String name, int handlerCount, String callQueueType, int maxQueueLength, PriorityFunction priority, org.apache.hadoop.conf.Configuration conf, Abortable abortable) -
Method Summary
Modifier and TypeMethodDescriptionboolean
dispatch
(CallRunner callTask) Add the request to the executor queuevoid
onConfigurationChange
(org.apache.hadoop.conf.Configuration conf) Methods inherited from class org.apache.hadoop.hbase.ipc.RpcExecutor
computeNumCallQueues, getActiveHandlerCount, getActiveReadHandlerCount, getActiveScanHandlerCount, getActiveWriteHandlerCount, getBalancer, getCallQueueCountsSummary, getCallQueueSizeSummary, getHandler, getName, getNumGeneralCallsDropped, getNumLifoModeSwitches, getQueueLength, getQueues, getReadQueueLength, getScanQueueLength, getWriteQueueLength, initializeQueues, isCodelQueueType, isDeadlineQueueType, isFifoQueueType, isPluggableQueueType, isPluggableQueueWithFastPath, resizeQueues, start, startHandlers, startHandlers, stop
-
Field Details
-
balancer
-
-
Constructor Details
-
BalancedQueueRpcExecutor
public BalancedQueueRpcExecutor(String name, int handlerCount, int maxQueueLength, PriorityFunction priority, org.apache.hadoop.conf.Configuration conf, Abortable abortable) -
BalancedQueueRpcExecutor
public BalancedQueueRpcExecutor(String name, int handlerCount, String callQueueType, int maxQueueLength, PriorityFunction priority, org.apache.hadoop.conf.Configuration conf, Abortable abortable)
-
-
Method Details
-
dispatch
Description copied from class:RpcExecutor
Add the request to the executor queue- Specified by:
dispatch
in classRpcExecutor
-
onConfigurationChange
- Overrides:
onConfigurationChange
in classRpcExecutor
-