Workload balancing in clustered application servers
First Claim
1. A method of workload balancing for a multitude of applications servers, said method comprising the steps of:
- sending, by an application client, an application request to a request queue of a dispatching server, extracting, by said dispatching server, an application request from said request queue wherein;
said dispatching server is selecting a certain one of said application servers to which said extracted application request is to be sent to based on a table, said table being administered by said dispatching server and said table comprising an indication of workload of said application servers, said dispatching server administering said table according to said selection, and said dispatching server sending said extracted application request to said certain application server, wherein;
said dispatching server is storing, instead of sending said extracted application request to said certain application server, said extracted application request to a buffer, if the number of outstanding application requests of said selected application server is above a threshold value, and said dispatching server is actually sending said application request once said number of outstanding application requests falls below said threshold value said buffer either being said request queue itself or being separate from said request queue, and returning to said dispatching server, by an application server after processing an application request, a response comprising an indication of its current workload, wherein said dispatching-server is administering said table according to said response.
1 Assignment
0 Petitions
Accused Products
Abstract
The invention relates to a method and means of workload balancing for a multitude of applications servers. The method comprises a first-step, wherein an application client sends an application request to a request queue of a dispatcher. In a second step the dispatcher is extracting an application request from said request queue. Within the second step the dispatcher selects a certain one of the application servers to which the extracted application request is to be sent to based on a table. The table is administered by the dispatcher and the table comprises an indication of the workload of the application servers. Also within the second step the dispatcher administers the table according to the selection and the dispatcher sends the extracted application request to said certain application server. The method comprises a third step, wherein an application server after processing an application request returns to the dispatcher a response comprising an indication of its current workload. In a fourth step the dispatcher is administering the table according to said response.
-
Citations
15 Claims
-
1. A method of workload balancing for a multitude of applications servers, said method comprising the steps of:
-
sending, by an application client, an application request to a request queue of a dispatching server, extracting, by said dispatching server, an application request from said request queue wherein;
said dispatching server is selecting a certain one of said application servers to which said extracted application request is to be sent to based on a table, said table being administered by said dispatching server and said table comprising an indication of workload of said application servers, said dispatching server administering said table according to said selection, and said dispatching server sending said extracted application request to said certain application server, wherein;
said dispatching server is storing, instead of sending said extracted application request to said certain application server, said extracted application request to a buffer, if the number of outstanding application requests of said selected application server is above a threshold value, and said dispatching server is actually sending said application request once said number of outstanding application requests falls below said threshold value said buffer either being said request queue itself or being separate from said request queue, and returning to said dispatching server, by an application server after processing an application request, a response comprising an indication of its current workload, wherein said dispatching-server is administering said table according to said response. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A computer system acting as a dispatching server for application requests requesting service from a multitude of applications servers
said dispatching server, said applications servers and at least one application client being connected by a network, wherein said dispatching server comprising a first port for receiving from said application client an application request, said dispatching server further comprising a table being administered by said dispatching server, said table comprising an indication of the workload of said application servers, said dispatching server using said table for selecting a certain one of said application servers and administering said table according to said selection, said dispatching server comprising a second port for sending said application request to said certain application server, wherein: -
said dispatching server is storing instead of sending said extracted application request to said certain application server, said extracted application request to a buffer, if the number of outstanding application requests of said selected application server is above a threshold value, and said dispatching server is actually sending said application request once said number of outstanding application requests falls below said threshold value, said buffer either being said request queue itself or being separate from said request queue, said dispatching server comprising a third port over which an application server after processing an application request returning to said dispatching server a response comprising an indication of its current workload, and said dispatching server being susceptible to said response by administering said table accordingly. - View Dependent Claims (9)
-
-
10. A data processing program for execution in a data processing system comprising software code portions for performing workload balancing for a multitude of applications servers, said data processing program comprising:
-
data processing means for sending, by an application client, an application request to a request queue of a dispatching server, data processing means for extracting, by said dispatching server, an application request from said request queue wherein;
said dispatching server is selecting a certain one of said application servers to which said extracted application request is to be sent to based on a table, said table being administered by said dispatching server and said table comprising an indication of workload of said application servers, said dispatching server administering said table according to said selection, and said dispatching server sending said extracted application request to said certain application server, wherein;
said dispatching server is storing instead of sending said extracted application request to said certain application server, said extracted application request to a buffer, if the number of outstanding application requests of said selected application server is above a threshold value, and said dispatching server is actually sending said application request once said number of outstanding application requests falls below said threshold value, said buffer either being said request queue itself or being separate from said request queue, and data processing means for returning to said dispatching server, by an application server after processing an application request, a response comprising an indication of its current workload, wherein said dispatching-server is administering said table according to said response. - View Dependent Claims (11, 12, 13, 14, 15)
-
Specification