Patent ID: 7320131

Claim:
A method in a data communications device for directing a request to process data, comprising the steps of: maintaining cost information for a plurality of resources available to satisfy client requests via a plurality of resource providers, the cost information for each resource specifying a relationship between levels of usage of the resource in a billing interval and corresponding levels of prices charged by the respective resource provider in the billing interval; maintaining usage information for the plurality of resources, the usage information for each resource specifying a level of usage of the resource that has been experienced during the billing interval; receiving the request from a client; generating, based on the usage information and an estimated request usage of the request, an estimated response usage for each resource of the plurality of resources that reflects a potential usage if responding to the request, each estimated response usage being associated, via the cost information, with a corresponding cost estimate for processing the request, a first cost estimate being a first cost increase for a first resource of the plurality of resources if the first resource responds to the request, and a second cost estimate being a second cost increase for a second resource of the plurality of resources if the second resource responds to the request; selecting a resource from said plurality of resources to process the request based on the respective cost estimate associated with said estimated response usage of each of said resources, the selecting including (1) comparing the first cost increase and the second cost increase to determine one of the first and second cost increases that has a lower cost increment, and (2) selecting one of the first resource and the second resource to respond to the request from the client based on the lower cost increment; and forwarding the request to the selected resource.