Efficient assignment of processing resources in a fair queuing system
First Claim
Patent Images
1. A method for dispatching requests to processing resources, the method comprising steps of:
- determining if a processing resource is idle, the processing resource having a current service type to process requests that have the current service type;
determining if the processing resource is to be switched to a different service type to process requests having the different service type when the processing resource is idle;
switching the processing resource to the different service type when the switching is determined; and
dispatching an outstanding request having the different service type to the processing resource.
4 Assignments
0 Petitions
Accused Products
Abstract
A method and system is provided for dispatching requests to processing resources. A processing resource has a current service type to process requests that have the current service type. When the processing resource is idle, it is determined whether the processing resource is to be switched to a different service type to process requests having the different service type. The processing resource is switched to the different service type when the switching is determined; and an outstanding request having the different service type is dispatched to the processing resource.
89 Citations
44 Claims
-
1. A method for dispatching requests to processing resources, the method comprising steps of:
-
determining if a processing resource is idle, the processing resource having a current service type to process requests that have the current service type;
determining if the processing resource is to be switched to a different service type to process requests having the different service type when the processing resource is idle;
switching the processing resource to the different service type when the switching is determined; and
dispatching an outstanding request having the different service type to the processing resource. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 26, 27, 28, 29)
-
-
12. A method for dispatching queued requests to a predetermined number of server instances, the method comprising steps of:
-
determining if a server instance is idle, the server instance having a current service type to process requests that have the current service type;
determining if the server instance is to be switched to a different service type to process requests having the different service type when the server instance is idle;
switching the server instance to the different service type when the switching is determined; and
dispatching a queued request having the different service type to the server instance.
-
-
25. A method for dispatching queued requests to a predetermined number of server instances, the method comprising steps of:
-
using a plurality of queues for queuing requests, each request having a service type, a service type being defined by a primary request parameter and one or more secondary request parameters, and each queue being used for queuing requests having a same primary request parameter;
reserving a minimum number of server instance slots for each queue, each server instance slot representing a potential server instance, each server instance having a current service type;
allocating one or more non-reserved server instance slots for one or more queues when the total number of server instances is larger than the sum of minimum numbers of reserved server instance slots for queues being used;
reallocating a non-reserved server instance slot to a different queue when the non-reserved server instance slot is free; and
dispatching a queued request from a queue to an idle server instance in a server instance slot allocated for the queue.
-
-
30. A request dispatching system for dispatching requests to processing resources, the request dispatching system comprising:
-
a processing resource controller having a switch controller for controlling switching of an idle processing resource having a current service type to a different service type; and
a dispatching controller for dispatching an outstanding request having the different service type to the processing resource. - View Dependent Claims (31, 32, 33, 35, 36, 37, 38, 39, 40)
-
-
34. A request dispatching system for dispatching queued requests to a predetermined number of server instances, the request dispatching system comprising:
-
a server instance controller having a switch controller for controlling switching of an idle server instance having a current service type to a different service type; and
a dispatching controller for dispatching an outstanding request having the different service type to the server instance.
-
-
41. A computer readable memory for storing computer executable instructions for carrying out a method for dispatching requests to processing resources, the method comprising steps of:
-
determining if a processing resource is idle, the processing resource having a current service type to process requests that have the current service type;
determining if the processing resource is to be switched to a different service type to process requests having the different service type when the processing resource is idle;
switching the processing resource to the different service type when the switching is determined; and
dispatching an outstanding request having the different service type to the processing resource.
-
-
42. A computer readable memory for storing computer executable instructions for carrying out a method for dispatching queued requests to a predetermined number of server instances, the method comprising steps of:
-
using a plurality of queues for queuing requests, each request having a service type, a service type being defined by a primary request parameter and one or more secondary request parameters, and each queue being used for queuing requests having a same primary request parameter;
reserving a minimum number of server instance slots for each queue, each server instance slot representing a potential server instance, each server instance having a current service type;
allocating one or more non-reserved server instance slots for one or more queues when the total number of server instances is larger than the sum of minimum numbers of reserved server instance slots for queues being used;
reallocating a non-reserved server instance slot to a different queue when the non-reserved server instance slot is free; and
dispatching a queued request from a queue to an idle server instance in a server instance slot allocated for the queue.
-
-
43. Electronic signals for use in the execution in a computer of a method for dispatching requests to processing resources, the method comprising steps of:
-
determining if a processing resource is idle, the processing resource having a current service type to process requests that have the current service type;
determining if the processing resource is to be switched to a different service type to process requests having the different service type when the processing resource is idle;
switching the processing resource to the different service type when the switching is determined; and
dispatching an outstanding request having the different service type to the processing resource.
-
-
44. Electronic signals for use in the execution in a computer of a method for dispatching queued requests to a predetermined number of server instances, the method comprising steps of:
-
using a plurality of queues for queuing requests, each request having a service type, a service type being defined by a primary request parameter and one or more secondary request parameters, and each queue being used for queuing requests having a same primary request parameter;
reserving a minimum number of server instance slots for each queue, each server instance slot representing a potential server instance, each server instance having a current service type;
allocating one or more non-reserved server instance slots for one or more queues when the total number of server instances is larger than the sum of minimum numbers of reserved server instance slots for queues being used;
reallocating a non-reserved server instance slot to a different queue when the non-reserved server instance slot is free; and
dispatching a queued request from a queue to an idle server instance in a server instance slot allocated for the queue.
-
Specification