Details
Description
1. The RWQueueRpcExecutor has eight constructor method and the longest one has ten parameters. But It is only used in SimpleRpcScheduler and easy to confused when read the code.
2. There are duplicate method implement in RWQueueRpcExecutor and BalancedQueueRpcExecutor. They can be implemented in their parent class RpcExecutor.
3. SimpleRpcScheduler read many configs to new RpcExecutor. But the CALL_QUEUE_SCAN_SHARE_CONF_KEY is only needed by RWQueueRpcExecutor. And CALL_QUEUE_CODEL_TARGET_DELAY, CALL_QUEUE_CODEL_INTERVAL and CALL_QUEUE_CODEL_LIFO_THRESHOLD are only needed by AdaptiveLifoCoDelCallQueue.
So I thought we can refactor it. Suggestions are welcome.
Review board: https://reviews.apache.org/r/53726/