[
https://issues.apache.org/jira/browse/HBASE-29231?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Ray Mattingly resolved HBASE-29231.
-----------------------------------
Fix Version/s: 4.0.0-alpha-1
2.7.0
3.0.0-beta-2
2.6.3
Resolution: Fixed
Thanks for the contribution [~ajkhughes]!
> 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)