Patent ID: 8667056

Claim:
A computer-implemented method of dynamically determining whether to allow a request for a type of resource in a distributed electronic environment, comprising: under control of one or more computing systems configured with executable instructions, receiving a request associated with a plurality of users and a type of resource; determining whether a user has permission to access the type of resource, the user being a particular user of the plurality of users; determining a number of requests received for the user for the type of resource over a current period of time; denying the request when the user does not have permission to access the type of resource or the number of requests exceeds an allowed number of requests for the current period of time, the allowed number of requests determined dynamically for the current period of time according to one or more conditions; predicting a future velocity of requests received for the user based at least in part upon a current velocity of requests received for the user and an acceleration in the current velocity of requests received for the user over a recent period of time, the acceleration determined dynamically based at least in part on a maximum burst rate; denying the request when the current velocity or the future velocity exceeds a current allowed rate of requests, the current allowed rate of requests determined dynamically according to at least one continuous access function having a scaling factor selected for the type of resource and a maximum traffic level for an allowance value of the user, the scaling factor varying over time based at least in part upon a change in available capacity of the type of resource; and allowing the request for the type of resource when the user has access to the type of resource, the user is at or below the allowed number of requests for the current period of time, and the current and future velocities are at or below the current allowed rate of requests.