Load Balancing Web Service by Rejecting Connections
First Claim
1. A method of distributing requests among a pool of web servers, the method comprising:
- receiving, at a load balancer, a request from a first client;
sending, by the load balancer, the request to a first web server;
receiving, at the load balancer, a rejection notification from the first web server; and
sending, by the load balancer, the request to a second web server.
2 Assignments
0 Petitions
Accused Products
Abstract
A load balancer allocates requests to a pool of web servers configured to have low queue capacities. If the queue capacity of a web server is reached, the web server responds to an additional request with a rejection notification to the load balancer, which enables the load balancer to quickly send the rejected request to another web server. Each web server self-monitors its rejection rate. If the rejection rate exceeds a threshold, the number of processes concurrently running on the web server is increased. If the rejection rate falls below a threshold, the number of processes concurrently running on the web server is decreased.
-
Citations
18 Claims
-
1. A method of distributing requests among a pool of web servers, the method comprising:
-
receiving, at a load balancer, a request from a first client; sending, by the load balancer, the request to a first web server; receiving, at the load balancer, a rejection notification from the first web server; and sending, by the load balancer, the request to a second web server. - View Dependent Claims (2, 3, 4)
-
-
5. A method of managing a web server, the web server having a queue for receiving requests, the method comprising:
-
receiving, at a web server, a request from a client via a load balancer; responsive to space being available in the queue, placing the request in the queue; and responsive to the queue being full, sending a rejection notification to the load balancer. - View Dependent Claims (6, 7, 8, 9)
-
-
10. A load balancer comprising:
-
a client interaction module that receives a request from a first client; and a server interaction module that sends the request to a first web server, receives a rejection notification from the first web server, and sends the request to a second web server from a pool of web servers. - View Dependent Claims (11, 12, 13)
-
-
14. A web server comprising:
-
a queue; and a queue manager that receives a request from a client via a load balancer, and responsive to space being available in the queue, places the request in a queue, and responsive to the queue being full, sends a rejection notification to the load balancer. - View Dependent Claims (15, 16, 17, 18)
-
Specification