Scheduling server requests to decrease response time and increase server throughput
First Claim
1. A method for operating a server on a computer network to supply data stored on said server in response to requests received on said network, said method comprising the steps of:
- receiving a request on said network;
determining a priority value for said request, said priority value comprising the sum of a counter value and a cost value, said cost value being monotonically related to the quantity of server resources needed to service said request;
storing said request in a queue;
selecting one of said requests stored in said queue for servicing, said selected request having the lowest priority value of said requests stored in said queue;
said selected request being removed from said queue;
and incrementing said counter by a value proportional to said cost value associated with said request selected for servicing.
4 Assignments
0 Petitions
Accused Products
Abstract
A method for operating a server on a computer network to supply data stored on the server in response to requests received on the network. The server stores the requests in a queue and determines a priority value for the request. The priority value includes the sum of a counter value and a cost value, the cost value being monotonically related to the quantity of server resources needed to service the request. When the server selects one of the requests stored in the queue for servicing it picks the request having the lowest priority value of the requests stored in the queue. The selected request is removed from the queue and the counter value is incremented by a value proportional to the cost value associated with the request selected for servicing. In one embodiment, the cost value is proportional to the length of a file specified in the received request. In one embodiment, one of the received requests also includes information specifying a class for the request. The server also determines a maximum priority value for that class, the maximum priority value being at least as great as the priority value having the highest value for any request of that class currently stored in the queue. The server compares the determined priority value for the received request with the maximum priority value and changes the determined priority value to a value greater than the maximum value if the determined priority value was less than or equal to the maximum priority value.
-
Citations
7 Claims
-
1. A method for operating a server on a computer network to supply data stored on said server in response to requests received on said network, said method comprising the steps of:
-
receiving a request on said network; determining a priority value for said request, said priority value comprising the sum of a counter value and a cost value, said cost value being monotonically related to the quantity of server resources needed to service said request; storing said request in a queue; selecting one of said requests stored in said queue for servicing, said selected request having the lowest priority value of said requests stored in said queue;
said selected request being removed from said queue;and incrementing said counter by a value proportional to said cost value associated with said request selected for servicing. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
Specification