Weighted request rate limiting for resources
Abstract
Methods and systems to automatically respond to consider the weight of a request when responding to requests associated with resources are described. In one embodiment, an interface module may be configured to receive a request associated with consumer identifier and a resource. A calculator module may be configured to determine a weight of the request and a usage module configured to calculate, using a processor, a usage level associated with the consumer identifier, the usage level based on a usage history associated with the consumer identifier. An enforcer module may also be configured to respond to the request based on the usage level and the weight of the request. In one embodiment, the usage module may also be configured to update the usage level associated with the consumer identifier based on the weight of the request.
Claims
exact text as granted — not AI-modified1 . A method, comprising:
receiving a request, the request including a consumer identifier; determining a weight of the request based on a predetermined metric; updating a usage history corresponding to the consumer identifier, based on the weight of the search request; and responding to the request based on the updated usage history and the weight of the request.
2 . The method of claim 1 , wherein the weight of the request is determined based on at least one of a type of the search request and parameters associated with the search request.
3 . The method of claim 1 , wherein the responding to the request is in accordance with a usage policy based on at least one of a weight per time period, an absolute weight limit, and a change in response time over a time period.
4 . The method of claim 1 , wherein responding to the search request comprises rejecting the request.
5 . The method of claim 1 , further comprising updating the usage level associated with the consumer identifier based on an actual weight of the search request.
6 . The method of claim 1 , wherein the calculating the usage level comprises identifying a pattern in the usage history associated with the consumer identifier.
7 . The method of claim 1 , wherein the request comprises the consumer identifier and a resource identifier.
8 . A system comprising one or more modules implemented by one or more processors and configured to:
an interface module configured to receive a request, the request including a consumer identifier; a calculator module configured to determine a night of the request based on a predetermined metric; a usage module configured to update a usage history corresponding to the consumer identifier, based on the weight of the search request; and an enforcer module configured to respond to the request based on the updated usage history and the weight of the request.
9 . The system of claim 8 , wherein the calculator module is configured to determine the weight of the request based on at least one of a type of the request and parameters associated with the request.
10 . The system of claim 8 , wherein the enforcer module is configured to respond to the request in accordance with a usage policy based on at least one of a weight per time period, an absolute weight limit, and a change in response time over a time period.
11 . The system of claim 8 , wherein the enforcer module is further configured to reject the request.
12 . The system of claim 8 , wherein the usage module is further configured to update the usage level associated with the consumer identifier based on the weight of the request.
13 . The system of claim 8 , wherein the usage module is further configured to identify a pattern in the usage history associated with the consumer identifier.
14 . The system of claim 8 , wherein the request comprises the consumer identifier and a resource identifier.
15 . A non-transitory machine-readable medium comprising stored instructions, wherein the instructions, when executed, cause a machine to perform operations, comprising:
receiving a request, the request including a consumer identifier; determining a weight of the request based on a predetermined metric; updating a usage history corresponding to the consumer identifier, based on the weight of the search request; and responding to the request based on the updated usage history and the weight of the request.
16 . The non-transitory machine-readable medium of claim 15 , wherein the weight of the request is determined based on an estimate of the weight of the request.
17 . The non-transitory machine-readable medium of claim 16 , wherein the estimate of the weight of the request is based on responding to a plurality of previous requests.
18 . The non-transitory machine-readable medium of claim 15 , the machine-readable medium further comprising stored instructions, wherein the instructions, when executed, cause a machine to update the usage history associated with the consumer identifier based on the request.
19 . A system, comprising:
means for receiving a request, the request including a consumer identifier; means for determining a weight of the request based on a predetermined metric; means for updating a usage history corresponding to the consumer identifier, based on the weight of the search request; and means for responding to the request based on the updated usage history and the weight of the request.
20 . The system of claim 19 , further comprising:
means for updating the usage history associated with the consumer identifier based on the search request.Join the waitlist — get patent alerts
Track US2015256479A1 — get alerts on status changes and closely related new filings.
We store only your email — no account needed. See our privacy policy.