Equitable distribution of excess shared-resource throughput capacity
First Claim
1. A method, comprising:
- determining a first rate of operations directed to a first object, and a second rate of operations directed to a second object, wherein the first object has a first provisioned throughput and the second object has a second provisioned throughput, and wherein at least one operation directed to the first object comprises a use of a first resource shared by the first object and the second object;
identifying, based at least in part on (a) a throughput constraint of the first resource, (b) the respective rates of operations directed to the first and second objects, and (c) the respective provisioned throughputs, a first throughput limit for the first object, and a second throughput limit for the second object; and
determining, based at least in part on the first throughput limit, whether a request for an operation directed to the first object is to be accepted.
0 Assignments
0 Petitions
Accused Products
Abstract
Methods and apparatus for equitable distribution of excess shared-resource throughput capacity are disclosed. A first and a second work target are configured to access a shared resource to implement accepted work requests. Admission control is managed at the work targets using respective token buckets. A first metric indicative of the work request arrival rates at the work targets during a time interval, and a second metric associated with the provisioned capacities of the work targets are determined. A number of tokens determined based on a throughput limit of the shared resource is distributed among the work targets to be used for admission control during a subsequent time interval. The number of tokens distributed to each work target is based on the first metric and/or the second metric.
-
Citations
20 Claims
-
1. A method, comprising:
-
determining a first rate of operations directed to a first object, and a second rate of operations directed to a second object, wherein the first object has a first provisioned throughput and the second object has a second provisioned throughput, and wherein at least one operation directed to the first object comprises a use of a first resource shared by the first object and the second object; identifying, based at least in part on (a) a throughput constraint of the first resource, (b) the respective rates of operations directed to the first and second objects, and (c) the respective provisioned throughputs, a first throughput limit for the first object, and a second throughput limit for the second object; and determining, based at least in part on the first throughput limit, whether a request for an operation directed to the first object is to be accepted. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A system, comprising:
memory storing program instructions that, if executed, cause one or more processors to; determine a first rate of operations directed to a first object, and a second rate of operations directed to a second object, wherein the first object has a first provisioned throughput and the second object has a second provisioned throughput, and wherein at least one operation directed to the first object comprises a use of a first resource shared by the first object and the second object; identify, based at least in part on (a) a throughput constraint of the first resource, (b) the respective rates of operations directed to the first and second objects, and (c) the respective provisioned throughputs, a first throughput limit for the first object, and a second throughput limit for the second object; and determine, based at least in part on the first throughput limit, whether a request for an operation directed to the first object is to be accepted. - View Dependent Claims (12, 13, 14, 15)
-
16. A non-transitory computer-accessible storage medium storing program instructions that when executed on one or more processors cause the one or more processors to perform a method comprising:
-
determining a first rate of operations directed to a first object, and a second rate of operations directed to a second object, wherein the first object has a first provisioned throughput and the second object has a second provisioned throughput, and wherein at least one operation directed to the first object comprises a use of a first resource shared by the first object and the second object; identifying, based at least in part on (a) a throughput constraint of the first resource, (b) the respective rates of operations directed to the first and second objects, and (c) the respective provisioned throughputs, a first throughput limit for the first object, and a second throughput limit for the second object; and determining, based at least in part on the first throughput limit, whether a request for an operation directed to the first object is to be accepted. - View Dependent Claims (17, 18, 19, 20)
-
Specification