Optimized usage of collector resources for performance data collection through even task assignment
First Claim
Patent Images
1. A method of balancing computer resources on a network of computers, comprising:
- associating a plurality of tasks to a high level collector, priority score and weight score;
sorting the plurality of tasks into a list, the tasks being sorted first by priority score and then by weight score;
assigning the plurality of tasks into one of first and second queues, the first queue including highest weight scores sorted in descending order from highest to lowest weight, the second queue including lowest weight scores sorted in ascending order from lowest to highest weight, the quantity of tasks assigned to the first and second queues being substantially equal;
selecting tasks alternately from the first and second queues; and
assigning individual selected tasks to one of a plurality of low level collectors, the low level collectors individually having a total weight representing a sum of weight scores associated with tasks assigned thereto, the individual selected tasks being assigned to that low level collector not having reached capacity and having the lowest total weight just prior to assignment of respective ones of the individual selected tasks, the plurality of low level collectors comprising computer resources on a network of computers, the computer resources receiving tasks transmitted to the high level collector.
1 Assignment
0 Petitions
Accused Products
Abstract
A method of balancing computer resources on a network of computers is provided employing a two-tier network architecture of at least one High Level Collector as a scheduler/load balancing server, and a plurality Low level Collectors which gather task data and execute instructions. Tasks are assigned priority and weight scores and sorted prior to assignment to Low Level Collectors. Also provided is a computer readable medium including instructions, wherein execution of the instructions by at least one computing device balances computer resources on a network of computers.
15 Citations
16 Claims
-
1. A method of balancing computer resources on a network of computers, comprising:
-
associating a plurality of tasks to a high level collector, priority score and weight score; sorting the plurality of tasks into a list, the tasks being sorted first by priority score and then by weight score; assigning the plurality of tasks into one of first and second queues, the first queue including highest weight scores sorted in descending order from highest to lowest weight, the second queue including lowest weight scores sorted in ascending order from lowest to highest weight, the quantity of tasks assigned to the first and second queues being substantially equal; selecting tasks alternately from the first and second queues; and assigning individual selected tasks to one of a plurality of low level collectors, the low level collectors individually having a total weight representing a sum of weight scores associated with tasks assigned thereto, the individual selected tasks being assigned to that low level collector not having reached capacity and having the lowest total weight just prior to assignment of respective ones of the individual selected tasks, the plurality of low level collectors comprising computer resources on a network of computers, the computer resources receiving tasks transmitted to the high level collector. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A method of balancing computer resources on a network of computers, comprising:
-
associating a plurality of tasks to a high level collector, priority score and a weight score; sorting the plurality of tasks into a list, the tasks being sorted first by priority score and then by weight score; assigning the plurality of tasks into one of first and second queues, the first queue including highest weight scores sorted in descending order from highest to lowest weight, the second queue including lowest weight scores sorted in ascending order from lowest to highest weight, the quantity of tasks assigned to the first and second queues being substantially equal; selecting tasks alternately from the first and second queues; and assigning individual selected tasks to one of a plurality of low level collectors, the low level collectors individually having a total weight representing a sum of weight scores associated with tasks assigned thereto, the individual selected tasks being assigned to that low level collector not having reached capacity and having the lowest total weight just prior to assignment of respective ones of the individual selected tasks, the plurality of low level collectors having substantially equivalent processing power, the plurality of tasks being assigned substantially evenly among the plurality of low-level collectors.
-
-
9. A non-transitory computer-readable medium storing instructions, wherein execution of the instructions by at least one hardware computing device balances computer resources on a network of computers by:
-
associating a plurality of tasks to a high level collector, priority score and weight score; sorting the plurality of tasks into a list, the tasks being sorted first by priority score and then by weight score; assigning the plurality of tasks into one of first and second queues, the first queue including highest weight scores sorted in descending order from highest to lowest weight, the second queue including lowest weight scores sorted in ascending order from lowest to highest weight, the quantity of tasks assigned to the first and second queues being substantially equal; selecting tasks alternately from the first and second queues; and assigning individual selected tasks to one of a plurality of low level collectors, the low level collectors individually having a total weight representing a sum of weight scores associated with tasks assigned thereto, the individual selected tasks being assigned to that low level collector not having reached capacity and having the lowest total weight just prior to assignment of respective ones of the individual selected tasks, the plurality of low level collectors comprising computer resources on a network of computers, the computer resources receiving tasks transmitted to the high level collector. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16)
-
Specification