Computer server having non-client-specific persistent connections
First Claim
1. A computer server for providing data to clients, the server comprising:
- a dispatcher for receiving data requests from a plurality of clients; and
at least one back-end server;
wherein the dispatcher establishes at least one persistent connection with the back-end server, and forwards the data requests received from the plurality of clients to the back-end server over the persistent connection.
1 Assignment
0 Petitions
Accused Products
Abstract
Standalone and cluster-based servers, including Web servers, control the amount of data processed concurrently by such servers to thereby control server operating performance. Each server preferably includes a dispatcher for receiving data requests from clients, and at least one back-end server for processing such requests. The dispatcher preferably maintains a persistent connection, or a set of persistent connections, with the back-end server, and forwards the data requests received from clients to the back-end server over the persistent connections. Thus, instead of maintaining a one-to-one mapping of back-end connections to front-end connections as is done in the prior art, the back-end connections can be maintained by the dispatcher and used repeatedly for sending data between the dispatcher and the back-end server. In this manner, back-end connection overhead is markedly reduced.
57 Citations
18 Claims
-
1. A computer server for providing data to clients, the server comprising:
-
a dispatcher for receiving data requests from a plurality of clients; and
at least one back-end server;
wherein the dispatcher establishes at least one persistent connection with the back-end server, and forwards the data requests received from the plurality of clients to the back-end server over the persistent connection. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A method for reducing connection overhead between a dispatcher and a server, the method comprising:
-
establishing a persistent connection between the dispatcher and the server;
receiving at the dispatcher at least a first data request from a first client and a second data request from a second client; and
forwarding the first data request and the second data request from the dispatcher to the server over the persistent connection. - View Dependent Claims (10, 11, 12, 13, 15, 16, 18)
-
-
14. A method for reducing connection overhead between a dispatcher and a server, the method comprising:
-
establishing a set of persistent connections between the dispatcher and the server;
maintaining the set of persistent connections between the dispatcher and the server while establishing and terminating connections between the dispatcher and a plurality of clients;
receiving at the dispatcher data requests from the plurality of clients over the connections between the dispatcher and the plurality of clients; and
forwarding the received data requests from the dispatcher to the server over the set of persistent connections.
-
-
17. A method for reducing back-end connection overhead in a cluster-based server, the method comprising:
-
establishing a set of persistent connections between a dispatcher and each of a plurality of back-end servers;
maintaining each set of persistent connections while establishing and terminating connections between the dispatcher and a plurality of clients;
receiving at the dispatcher data requests from the plurality of clients over the connections between the dispatcher and the plurality of clients; and
forwarding each received data request from the dispatcher to one of the servers over one of the persistent connections.
-
Specification