Method and apparatus for handling requests in a network
First Claim
1. A method for responding to a client request, the method comprising the steps of:
- synchronizing a plurality of servers;
receiving a client request from the client to access a server of the plurality of servers;
generating a transmit identifier associated with the client request, the transmit identifier identifying an event upon the occurrence of which the plurality of synchronized servers each transmit a response to the client, wherein said transmit identifier includes a timestamp reflecting an arrival time of the client request, wherein a predetermined delay is added to the timestamp to produce the transmit identifier, wherein the predetermined delay is greater than a maximum transmission delay for transmission of the client request to one of the plurality of servers from a master server and wherein the transmit identifier is associated with the client request; and
forwarding the client request and the transmit identifier to each of the plurality of synchronized servers.
1 Assignment
0 Petitions
Accused Products
Abstract
The invention is directed to techniques for synchronizing a plurality of servers, receiving a client request from the client to access a server of the plurality of servers, generating a transmit identifier associated with the client request, the transmit identifier identifying an event upon the occurrence of which the plurality of synchronized servers each transmit a response to the client, forwarding the client request and the transmit identifier to each of the plurality of synchronized servers. The invention is also directed to techniques and mechanisms for receiving a client request associated with a client and receiving a transmit identifier identifying an event, generating a response to the client request, and transmitting the response to the client upon an occurrence of the event identified by the transmit identifier.
84 Citations
21 Claims
-
1. A method for responding to a client request, the method comprising the steps of:
-
synchronizing a plurality of servers; receiving a client request from the client to access a server of the plurality of servers; generating a transmit identifier associated with the client request, the transmit identifier identifying an event upon the occurrence of which the plurality of synchronized servers each transmit a response to the client, wherein said transmit identifier includes a timestamp reflecting an arrival time of the client request, wherein a predetermined delay is added to the timestamp to produce the transmit identifier, wherein the predetermined delay is greater than a maximum transmission delay for transmission of the client request to one of the plurality of servers from a master server and wherein the transmit identifier is associated with the client request; and forwarding the client request and the transmit identifier to each of the plurality of synchronized servers. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A method for responding to a client request, the method comprising the steps of:
-
receiving a client request associated with a client and receiving a transmit identifier identifying an event, wherein said transmit identifier includes a timestamp reflecting an arrival time of the client request and wherein a predetermined delay is added to the timestamp to produce the transmit identifier, wherein the predetermined delay is greater than a maximum transmission delay for transmission of the client request to one of the plurality of servers from a master server and wherein the transmit identifier is associated with the client request; generating a response to the client request; and transmitting the response to the client upon an occurrence of the event identified by the transmit identifier. - View Dependent Claims (9)
-
-
10. A master server for handling content requests comprising:
-
a memory; a communications interface; a processor; and an interconnection mechanism coupling the memory, the processor and the communications interface; wherein the memory is encoded with a request handler application that when performed on the processor, produces a request handler process that causes the master server to provide a client request and transmit identifier in response to a client request such that the processor is configured to; synchronize a plurality of servers; receive a client request from the client to access a server of the plurality of servers; generate a transmit identifier associated with the client request, the transmit identifier identifying an event upon the occurrence of which the plurality of synchronized servers each transmit a response to the client, and wherein said transmit identifier includes a timestamp reflecting an arrival time of the client request, wherein a predetermined delay is added to the timestamp to produce the transmit identifier, wherein the predetermined delay is greater than a maximum transmission delay for transmission of the client request to one of the plurality of servers from a master server and wherein the transmit identifier is associated with the client request; and forward the client request and the transmit identifier to each of the plurality of synchronized servers. - View Dependent Claims (11, 12, 13, 14, 15, 16)
-
-
17. A slave server for handling content requests comprising:
-
a memory; a communications interface; a processor; and an interconnection mechanism coupling the memory, the processor and the communications interface; wherein the memory is encoded with a request agent application that when performed on the processor, produces a request agent process that causes the slave server to provide content to a client, in response to a client request and a transmit identifier, such that the processor is configured to; receive a client request associated with a client and receiving a transmit identifier identifying an event, and wherein said transmit identifier includes a timestamp reflecting an arrival time of the client request, wherein a predetermined delay is added to the timestamp to produce the transmit identifier, wherein the predetermined delay is greater than a maximum transmission delay for transmission of the client request to one of the plurality of servers from a master server and wherein the transmit identifier is associated with the client request; generate a response to the client request; and transmit the response to the client upon an occurrence of the event identified by the transmit identifier. - View Dependent Claims (18)
-
-
19. A system for identifying a server that provides the fastest response to a client request comprising:
-
a master server, which is configured to (i) receive a client request from the client to access a server of a plurality of slave servers, (ii) generate a transmit identifier associated with the client request, the transmit identifier identifying an event upon the occurrence of which the plurality of synchronized servers each transmit a response to the client, and wherein said transmit identifier includes a timestamp reflecting an arrival time of the client request, wherein a predetermined delay is added to the timestamp to produce the transmit identifier, wherein the predetermined delay is greater than a maximum transmission delay for transmission of the client request to one of the plurality of servers from a master server and wherein the transmit identifier is associated with the client request and (iii) forward the client request and the transmit identifier to each of the plurality of synchronized servers; and a slave server, which is configured to (i) receive a client request associated with a client and receive a transmit identifier identifying an event (ii) generate a response to the client request, and transmit the response to the client upon an occurrence of the event identified by the transmit identifier.
-
-
20. A computer program product having a computer-readable medium including computer program logic encoded thereon that, when performed on a processor in a computerized device having a coupling of a memory, a processor, and at least one communications interface provides a method for providing a response to a client request by performing the operations of:
-
synchronizing a plurality of servers; receiving a client request from the client to access a server of the plurality of servers; generating a transmit identifier associated with the client request, the transmit identifier identifying an event upon the occurrence of which the plurality of synchronized servers each transmit a response to the client, and wherein said transmit identifier includes a timestamp reflecting an arrival time of the client request, wherein a predetermined delay is added to the timestamp to produce the transmit identifier, wherein the predetermined delay is greater than a maximum transmission delay for transmission of the client request to one of the plurality of servers from a master server and wherein the transmit identifier is associated with the client request; and forwarding the client request and the transmit identifier to each of the plurality of synchronized servers.
-
-
21. An apparatus for responding to a client request comprising:
a memory; a communications interface; a processor; and an interconnection mechanism coupling the memory, the processor and the communications interface; wherein the memory is encoded with a request handler application that when performed on the processor, produces a means to enable the client request and transmit identifier to be forwarded to at least one slave server, such means including; means for synchronizing a plurality of servers; means for receiving a client request from the client to access a server of the plurality of servers; means for generating a transmit identifier associated with the client request, the transmit identifier identifying an event upon the occurrence of which the plurality of synchronized servers each transmit a response to the client, and wherein said transmit identifier includes a timestamp reflecting an arrival time of the client request, wherein a predetermined delay is added to the timestamp to produce the transmit identifier, wherein the predetermined delay is greater than a maximum transmission delay for transmission of the client request to one of the plurality of servers from a master server and wherein the transmit identifier is associated with the client request; and means for forwarding the client request and the transmit identifier to each of the plurality of synchronized servers.
Specification