Ray Mattingly created HBASE-29231:
-------------------------------------
Summary: Throttles should support limits based on handler thread
usage time
Key: HBASE-29231
URL: https://issues.apache.org/jira/browse/HBASE-29231
Project: HBase
Issue Type: Improvement
Reporter: Ray Mattingly
Assignee: Ray Mattingly
We can reference RpcCall#getStartTime when closing quotas to determine the
processing time of any given operation.
With this information, we could start throttling users based on the aggregate
processing time of all of their requests — this could be a solid last line of
defense for workloads that are deceptively expensive, and would make throttle
configuration feel less like whack-a-mole.
For example, let's say you run RegionServers with 100 handler threads. This
means that, in any given second, you have 100,000 millis of handler thread time
to spend on all of the workloads against your cluster. It could be great to
restrict certain workloads to some smaller proportion of that time, so that you
can guarantee there will always be processing time dedicated to other workloads.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)