Method and apparatus for assigning tasks in a distributed server system
OwnerMor Harchol-Balter, Mark E. Crovellainventors
Life of this patent
Estimating the term…
Loading patent…
OwnerMor Harchol-Balter, Mark E. Crovellainventors
Estimating the term…
A distributed server system is disclosed which includes a load balancer and a plurality of host processors. The load balancer receives requests for service and distributes task assignments among the plurality of processors based upon the amount of work associated with the respective requests for service. More specifically, each host processor services requests for service within a predefined task size interval and the load balancer assigns to each host processor only those requests for service which involve task sizes within the particular task size interval associated with the respective processor. In the foregoing manner, the variability of the task sizes assigned to any given host processor is minimized and performance of the distributed server system is improved. In one embodiment of the invention, the thresholds defining the task size intervals served by respective host processors are selected using the task size distribution so as to attempt to allocate substantially the same amount of work to each of the host processors. In another embodiment of the invention, the thresholds defining the task size intervals served by the respective host processors are selected so as to intentionally vary the amount of work performed by the respective processors. This embodiment of the invention is intended to service requests for service in the nature of heavy tailed distributions. Task size interval assignments are skewed such that requests for service corresponding to smaller tasks are serviced by a host processor which is more lightly loaded than other processors. In this manner, mean slowdown metrics are improved.
Load balancing apparatus for assigning for processing received requests for service, said load balancing apparatus comprising:
Load balancing apparatus for assigning tasks in response to requests for service appearing at said apparatus in the nature of a distribution of task sizes from small jobs to large jobs in which the small jobs comprise a majority of the requests for service and the large jobs comprise a minority of the requests for service, said apparatus comprising:
A method for assigning a request for service to one of a plurality of host processors in response to the receipt of said request for service, comprising the steps of:
A method for assigning requests for service received at distributed server system to one of a plurality of host processors for service, wherein the nature of the received requests for service correspond to task sizes in the nature of a distribution of job task sizes from small jobs to large jobs in which the small jobs comprise a majority of the requests for service and the large jobs comprise a minority of the requests for service, said method comprising:
A method for assigning a request for service to one of a plurality of host processors in response to the receipt of said request for service, comprising the steps of:
Dependencies are inferred from the claim text.