[
https://issues.apache.org/jira/browse/HBASE-29231?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18046258#comment-18046258
]
Nick Dimiduk commented on HBASE-29231:
--------------------------------------
Just double-checking [~rmdmattingly] -- are you the primary author of this
contribution or is it [~ajkhughes]? From
https://github.com/apache/hbase/pull/7000, looks like it was Alex.
> 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
> Priority: Major
> Labels: pull-request-available
> Fix For: 4.0.0-alpha-1, 2.7.0, 3.0.0-beta-2, 2.6.3
>
>
> 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)