Queuing model for a plurality of servers
First Claim
1. A two-tier information retrieval system for distributing a first client service request from a client to query servers, the system comprising:
- a web server, the web server invoking a gateway upon receiving the first client service request;
a dispatcher in a first tier and in communication with the web server,a plurality of query servers suitable for fulfilling the first client service request, the plurality of query servers forming a second tier and receiving information from the gateway, the gateway being an interface between the web server and the plurality of query servers;
the gateway determining a presence of a server identification parameter in the first client service request, the server identification parameter identifying a first query server among the plurality of query servers, the first query server having handled a previous service request from the client;
the gateway distributing the first client service request directly to the first query server; and
the dispatcher receiving status information from the plurality of query servers, forwarding a second client service request to an available query server of the plurality of query servers in the absence of the server identification parameter; and
including a queue for the second client service request.
3 Assignments
0 Petitions
Accused Products
Abstract
The current invention provides a system and method for queuing and distributing requests to one or more query servers. The system contains a first tier queue associated with a server based mechanism for directing service requests to a second tier queue associated with each of the one or more query servers. The current invention provides a “pull” model for the distribution of an initial service request of a query containing two or more service requests. Subsequent service requests from this query are assigned to a query server without being placed in a first tier queue. These subsequent service requests are placed directly in the queue of the query server that handled the previous service request from the same query.
35 Citations
17 Claims
-
1. A two-tier information retrieval system for distributing a first client service request from a client to query servers, the system comprising:
-
a web server, the web server invoking a gateway upon receiving the first client service request; a dispatcher in a first tier and in communication with the web server, a plurality of query servers suitable for fulfilling the first client service request, the plurality of query servers forming a second tier and receiving information from the gateway, the gateway being an interface between the web server and the plurality of query servers; the gateway determining a presence of a server identification parameter in the first client service request, the server identification parameter identifying a first query server among the plurality of query servers, the first query server having handled a previous service request from the client; the gateway distributing the first client service request directly to the first query server; and the dispatcher receiving status information from the plurality of query servers, forwarding a second client service request to an available query server of the plurality of query servers in the absence of the server identification parameter; and
including a queue for the second client service request. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A method of routing a service request to query servers, the method comprising:
-
receiving the service request at a web server, the web server interfacing the client and the plurality of query servers; invoking a gateway on the web server upon receiving the service request, the gateway being an interface between the web server and the plurality of query servers; receiving the service request at the gateway; receiving a query server identification for an available query server among the plurality of query servers; forwarding the service request to the available query server identified by the query server identification; and including a server identification parameter in a reply to the client service request; determining a presence of the server identification parameter in a second client service request; and distributing the second service request directly to the available query server identified by the server identification parameter. - View Dependent Claims (7, 8, 9, 10, 11)
-
-
12. A storage medium readable by a computer encoding a computer program for execution by the computer to carry out a method of routing a service request to query servers, the computer program comprising:
-
code means for receiving the service request at a web server;
the web server interfacing the client and the plurality of query servers,code means for invoking a gateway on the web server upon receiving the service request, the gateway being an interface between the web server and the plurality of query servers; code means for receiving the service request at the gateway; code means for receiving a query server identification for an available query server among the plurality of query servers; code means for forwarding the service request to the available query server identified by the query server identification; code means for including a server identification parameter in a reply to the client service request; code means for determining a presence of the server identification parameter in a second client service request; and code means for distributing the second service request directly to the available query server identified by the server identification parameter. - View Dependent Claims (13, 14, 15, 16, 17)
-
Specification