Details
Description
After HBASE-15593, we have a timeout param in header of RPC requests. We can use it in more scenes.
A straightforward scene is to drop requests if it has waited so long in RPC queue and has been dropped by client. Even if we handle this request and send the response back, it will not be used any more. And client may have sent a retry. In an extreme case, if the server is slow, all requests may be timeout or queue-full-exception because we should handle previous requests which have been dropped by client and many resources at server are wasted.