Methods, apparatus and computer programs for managing performance and resource utilization within cluster-based systems
First Claim
1. A method for managing persistent connections between data processing units of a computer system, wherein a first data processing unit is connected to a second data processing unit to send requests to the second data processing unit for processing, the method comprising the steps of:
- monitoring a communication delay period for requests transferred from the first data processing unit to the second data processing unit;
comparing the monitored delay period with a threshold communication delay period to determine whether the monitored communication delay period indicates a predefined performance condition; and
, in response to determining that the monitored communication delay period indicates a predefined performance condition, adjusting the number of connections between the first and second data processing units.
3 Assignments
0 Petitions
Accused Products
Abstract
Disclosed are methods, apparatus and computer programs for improving performance and resource utilization of cluster-based data processing systems. The number of persistent connections between first and second data processing units of a system is adjusted according to monitored performance of communications between the nodes. The monitored performance measure is the queuing delay between the nodes, and the number of connections is increased and decreased as changing load conditions increase and decrease the queuing delay. A method of establishing and closing persistent connections in response to a monitored queuing-delay between a front-end gateway computer and each of a cluster of back-end servers is used to improve the performance of a cluster-based Web server or provision of Web services. Unwanted connections are closed to enable system resources to be allocated to other processes.
76 Citations
33 Claims
-
1. A method for managing persistent connections between data processing units of a computer system, wherein a first data processing unit is connected to a second data processing unit to send requests to the second data processing unit for processing, the method comprising the steps of:
-
monitoring a communication delay period for requests transferred from the first data processing unit to the second data processing unit;
comparing the monitored delay period with a threshold communication delay period to determine whether the monitored communication delay period indicates a predefined performance condition; and
,in response to determining that the monitored communication delay period indicates a predefined performance condition, adjusting the number of connections between the first and second data processing units. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15)
-
-
16. A data processing system comprising:
-
a first data processing unit operable for receiving requests from a client requestor and passing received requests to a second data processing unit, and for receiving responses from the second data processing unit and forwarding received responses to the client requestor; and
a second data processing unit operable for processing requests received from the first data processing unit to generate responses, and for forwarding the responses to the first data processing unit; and
a connection manager for managing the number of connections between the first and second data processing units, the connection manager being responsive to monitored communication delays between the first and second data processing units indicating a predefined performance condition to modify the n umber of persistent connections between the first and second data processing units. - View Dependent Claims (17)
-
-
18. A data processing system comprising:
-
a network subsystem;
a gateway node operable for receiving requests from a client requester and passing received requests to the network subsystem for delivery to one of a set of back-end processing nodes, and for receiving responses from the back-end processing nodes via the network subsystem and forwarding received responses to the client requestor; and
a set of back-end processing nodes operable for processing requests received from the gateway node via the network subsystem to generate responses, and for forwarding the responses to the gateway node via the network subsystem;
a connection manager operable for managing the number of connections between the gateway node and each of the back-end processing nodes, the connection manager being responsive to monitored communication delays between the gateway node and the back-end processing nodes indicating a predefined performance condition to modify the number of persistent connections between the gateway node and at least a first one of the back-end processing nodes. - View Dependent Claims (19, 20, 21, 22, 23)
-
-
24. A method for managing persistent connections between a gateway node and each of a set of back-end processing nodes arranged in a cluster within a data processing system, the method comprising the steps of:
-
monitoring a communication delay period for requests transferred from the gateway node to the back-end processing nodes;
comparing the monitored communication delay period with a threshold communication delay period to determine whether the monitored communication delay period indicates a predefined performance condition; and
,in response to determining that the monitored communication delay period indicates a predefined performance condition, adjusting the number of connections between the gateway node and at least one of the set of back-end nodes. - View Dependent Claims (25, 26, 27, 28, 29, 30, 31)
-
-
32. A program storage device readable by machine tangibly embodying a program of instructions executable by the machine to perform a method for controlling operations on a data processing system on which the program code executes, the program code comprising a connection manager for managing the number of connections between a first data processing unit and a second data processing unit of the system the method comprising:
-
monitoring a communication delay period for requests transferred from the first data processing unit to the second data processing unit, comparing the monitored communication delay period with a threshold communication delay period to determine whether the monitored communication delay period indicates a predefined performance condition; and
,in response to determining that the monitored delay period indicates a predefined performance condition, adjusting the number of connections between the first and second data processing units.
-
-
33. A data processing system comprising:
-
a gateway node operable for receiving requests from a client requestor and passing received requests to one of a set of back-end processing nodes, and for receiving responses from the back-end processing nodes and forwarding received responses to the client requester; and
a set of back-end processing nodes arranged in a cluster, for processing requests received from the gateway node to generate responses, and for forwarding the responses to the gateway node;
a connection manager operable for managing the number of connections between the gateway node and each of the back-end processing nodes, the connection manager being responsive to monitored communication delays between the gateway node and the back-end processing nodes indicating a predefined performance condition to modify the number of persistent connections between the gateway node and at least a first one of the back-end processing nodes.
-
Specification