Methods and apparatus for load balancing processing of management information
First Claim
1. A computer-implemented method for processing information in a management application in which at least one computer system accesses instructions from computer storage and executes the instructions to perform steps of:
- receiving at least one first store assignment request from at least one first agent that has an agent transaction to perform with a store process from a plurality of store processes, the agent transaction for processing management data via a store process assigned to the agent transaction in order to convert the management data into a managed data object, the management data collected by the first agent;
determining an existence of a non-available store condition in which received load information from each store process in the plurality of store processes is not within an acceptable threshold load factor range, the load information received from each store process indicating a relative processing load for the store process;
in response to determining the existence of the non-available store condition, maintaining an agent wait table containing an agent entry for each agent sending store assignment requests during the non-available store condition, each agent entry identifying a wait threshold time specific to a corresponding agent and further identifying the store assignment request associated with the corresponding agent;
assigning a first store process from the plurality of store processes for the first agent to use to perform the agent transaction based on a store process availability of the first store process;
after assignment of the first store process for the first agent, establishing a recently assigned agent condition associated with the first store process, the recently assigned agent condition defining an acceptable number of agents assigned to the first store process during a predetermined agent assignment interval, whereby;
if the recently assigned agent condition associated with first store process equals the acceptable number of agents during the predetermined agent assignment interval, selecting a store process from the plurality of store processes for processing a second agent transaction other than the first store process to which the recently assigned agent condition applies; and
clearing the recently assigned agent condition after the predetermined agent assignment interval has elapsed.
9 Assignments
0 Petitions
Accused Products
Abstract
Mechanisms and techniques for processing information in a management application, such as a storage area network management application, include a load manager, a set of distributed agents that collect information, and a set of store process that store the agent-collected information. The load manager receives load information from a plurality of store processes. The load information indicates a relative processing load for respective store processes. The load manager determines store process availability based on the received load information. The load manager receives a store assignment request from an agent that has an agent transaction to perform with a store process and assigns a store process of the plurality of store processes for the agent to use to perform the agent transaction based on the determined store process availability. In addition, other embodiments include the use of agent transaction weights to allow the store process and/or the load manager to further load-balance agent transactions between store processes.
-
Citations
21 Claims
-
1. A computer-implemented method for processing information in a management application in which at least one computer system accesses instructions from computer storage and executes the instructions to perform steps of:
-
receiving at least one first store assignment request from at least one first agent that has an agent transaction to perform with a store process from a plurality of store processes, the agent transaction for processing management data via a store process assigned to the agent transaction in order to convert the management data into a managed data object, the management data collected by the first agent; determining an existence of a non-available store condition in which received load information from each store process in the plurality of store processes is not within an acceptable threshold load factor range, the load information received from each store process indicating a relative processing load for the store process; in response to determining the existence of the non-available store condition, maintaining an agent wait table containing an agent entry for each agent sending store assignment requests during the non-available store condition, each agent entry identifying a wait threshold time specific to a corresponding agent and further identifying the store assignment request associated with the corresponding agent; assigning a first store process from the plurality of store processes for the first agent to use to perform the agent transaction based on a store process availability of the first store process; after assignment of the first store process for the first agent, establishing a recently assigned agent condition associated with the first store process, the recently assigned agent condition defining an acceptable number of agents assigned to the first store process during a predetermined agent assignment interval, whereby; if the recently assigned agent condition associated with first store process equals the acceptable number of agents during the predetermined agent assignment interval, selecting a store process from the plurality of store processes for processing a second agent transaction other than the first store process to which the recently assigned agent condition applies; and clearing the recently assigned agent condition after the predetermined agent assignment interval has elapsed. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A computer system comprising:
-
a memory; a processor; a communications interface; an interconnection mechanism coupling the memory, the processor and the communications interface; wherein the memory is encoded with a load manager application that when performed on the processor, provides a load manager process for processing information in a management application, the load manager process causing the computer system to perform the operations of; receiving at least one first store assignment request from at least one first agent that has an agent transaction to perform with a store process from a plurality of store processes, the agent transaction for processing management data via a store process assigned to the agent transaction in order to convert the management data into a managed data object, the management data collected by the first agent; determining an existence of a non-available store condition in which received load information from each store process in a plurality of store processes is not within an acceptable threshold load factor range, the load information received from each store process indicating a relative processing load for the store process; in response to determining the existence of the non-available store condition, maintaining an agent wait table containing an agent entry for each agent sending store assignment requests during the non-available store condition, each agent entry identifying a wait threshold time specific to a corresponding agent and further identifying the store assignment request associated with the corresponding agent; assigning a first store process from the plurality of store processes for the first agent to use to perform the agent transaction based on a store process availability of the first store process; after assignment of the first store process for the first agent, establishing a recently assigned agent condition associated with the first store process, the recently assigned agent condition defining an acceptable number of agents assigned to the first store process during a predetermined agent assignment interval, whereby; if the recently assigned agent condition associated with first store process equals the acceptable number of agents during the predetermined agent assignment interval, selecting a store process from the plurality of store processes for processing a second agent transaction other than the first store process to which the recently assigned agent condition applies; and clearing the recently assigned agent condition after the predetermined agent assignment interval has elapsed. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18, 19, 20)
-
-
21. A computer program product having a computer readable medium including computer program logic encoded thereon that, when executed on a computer system provides a method for processing information in a management application by causing the computer system to perform the operations of:
-
receiving at least one first store assignment request from at least one first agent that has an agent transaction to perform with a store process from a plurality of store processes, the agent transaction for processing management data via a store process assigned to the agent transaction in order to convert the management data into a managed data object, the management data collected by the first agent; determining an existence of a non-available store condition in which received load information from each store process in a plurality of store processes is not within an acceptable threshold load factor range, the load information received from each store process indicating a relative processing load for the store process; in response to determining the existence of the non-available store condition, maintaining an agent wait table containing an agent entry for each agent sending store assignment requests during the non-available store condition, each agent entry identifying a wait threshold time specific to a corresponding agent and further identifying the store assignment request associated with the corresponding agent; assigning a first store process from the plurality of store processes for the first agent to use to perform the agent transaction based on a store process availability of the first store process; after assignment of the first store process for the first agent, establishing a recently assigned agent condition associated with the first store process, the recently assigned agent condition defining an acceptable number of agents assigned to the first store process during a predetermined agent assignment interval, whereby; if the recently assigned agent condition associated with first store process equals the acceptable number of agents during the predetermined agent assignment interval, selecting a store process from the plurality of store processes for processing a second agent transaction other than the first store process to which the recently assigned agent condition applies; and clearing the recently assigned agent condition after the predetermined agent assignment interval has elapsed.
-
Specification