Method for coordinating actions among a group of servers
First Claim
1. In a client-server environment having a server group including one or more participating servers and one or more controller servers, where each participating server can communicate with at least one controller server, a method for coordinating actions among the servers in the server group comprising:
- communicating between a client and at least one of the servers in the server group using a protocol that has limited or no defined procedures for passing state information between the client and the servers;
maintaining client state information;
transmitting a request for an action from the client to a first server of the server group; and
communicating among a plurality of servers, wherein said plurality of servers includes said first server and at least one other server, said at least one other server including at least one controller server, and wherein said communicating procedure includes said at least one controller server coordinating actions of at least one of the plurality of servers in response to the request.
0 Assignments
0 Petitions
Accused Products
Abstract
In a client-server environment having a server group including one or more participating servers and one or more controller servers, where each participating server can communicate with at least one controller server, a method for coordinating actions among the servers in the server group comprising the steps of: (1) communicating between a client and at least one of the servers in the server group using a protocol that has limited or no defined procedures for passing state information between the client and the servers; (2) transmitting a request for an action from the client to one of the servers; and (3) communicating among a plurality of servers with at least one controller server coordinating actions of at least some of the servers in response to the request. A preferred embodiment of the method includes providing client identification information once by the client during a conversation, verifying the client identification information by one or more controller servers, generating client authentication information by one or more controller servers that is preserved in the conversation, and using the preserved client authentication information to automatically authenticate the client during the remainder of the conversation. Another preferred embodiment of the method includes transmitting a request by a client requiring participation by a plurality of servers and communicating among the servers with at least one controller server coordinating the actions of a plurality of servers in response to the request from the client.
69 Citations
35 Claims
-
1. In a client-server environment having a server group including one or more participating servers and one or more controller servers, where each participating server can communicate with at least one controller server, a method for coordinating actions among the servers in the server group comprising:
-
communicating between a client and at least one of the servers in the server group using a protocol that has limited or no defined procedures for passing state information between the client and the servers;
maintaining client state information;
transmitting a request for an action from the client to a first server of the server group; and
communicating among a plurality of servers, wherein said plurality of servers includes said first server and at least one other server, said at least one other server including at least one controller server, and wherein said communicating procedure includes said at least one controller server coordinating actions of at least one of the plurality of servers in response to the request.
-
-
2. In a client-server environment having a server group including one or more participating servers and one or more controller servers, where each participating server can communicate with at least one controller server, a method for coordinating actions among the servers in the server group comprising:
-
communicating between a client and at least one of the servers in the server group using a protocol that has limited or no defined procedures for passing state information between the client and the servers;
maintaining client state information;
transmitting a request for an action from the client to a first server of the server group, the action requiring participation by a plurality of servers; and
communicating among a plurality of servers, wherein said plurality of servers includes said first server and at least one other server, said at least one other server including at least one controller server, and wherein said communicating procedure includes said at least one controller server coordinating actions of the plurality of servers in response to the request. - View Dependent Claims (3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17)
communicating between at least one controller server and at least one of the plurality of servers; and
merging responses from at least one of the plurality of servers by at least one controller server.
-
-
16. The method for coordinating actions among the servers of claim 12 in which the default group of servers includes one or more servers in the server group with which the client has communicated during a conversation.
-
17. The method for coordinating actions among the servers of claim 12 in which the default group of servers is determined with respect to the servers involved in a last group transaction.
-
18. A system for coordinating actions among the servers in a server group comprising:
-
a server group including one or more participating servers and one or more controller servers, wherein each participating server can communicate with at least one controller server;
a client which can communicate with at least one of the servers in the server group using a protocol that has limited or no defined procedures for passing state information between the client and the servers;
means for maintaining client state information;
means for transmitting a request for an action from the client to a first server of the server group; and
means for communicating among a plurality of servers, wherein said plurality of servers includes said first server and at least one other server, said at least one other server including at least one controller server, and wherein said communicating procedure includes said at least one controller server coordinating actions of at least one of the servers in response to the request. - View Dependent Claims (20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34)
means for communicating between at least one controller server and at least some of the plurality of servers; and
means for merging responses from at least one of the plurality of servers by at least one controller server.
-
-
25. The system for coordinating actions among the servers of claim 18 in which the servers, are World Wide Web sites.
-
26. The method for coordinating actions among the servers of claim 18 wherein the client state information includes at least one client identity and at least one session identity.
-
27. The method for coordinating actions among the servers of claim 18 wherein the maintaining client state information includes providing dynamic argument embedding.
-
28. The system for coordinating actions among the servers of claim 18 in which the protocol used for communicating between the client and the servers is the HyperText Transfer Protocol.
-
29. The method for coordinating actions among the servers of claim 18 in which the protocol used for communicating between the client and the servers is the Hypertext Transfer Protocol and wherein the maintaining client state information operation includes providing client state cookies.
-
30. The system for coordinating actions among the servers of claim 18 in which the protocol used for communicating between the client and the servers is secure.
-
31. The system for coordinating actions among the servers of claim 18 in which at least one participating server can communicate with multiple controllers.
-
32. The system for coordinating actions among the servers of claim 18 in which the participating servers cannot communicate directly with each other.
-
33. The system for coordinating actions among the server of claim 21 in which the default group of servers includes one or more servers in the server group with which the client has communicated during a conversation.
-
34. The system for coordinating actions among the servers of claim 21 in which the default group of servers is determined with respect to the servers involved in a last group transaction.
-
19. A system for coordinating actions among the servers in a server group comprising:
-
a server group including one or more participating servers and one or more controller servers, wherein each participating server can communicate with at least one controller server;
a client which can communicate with at least one of the servers in the server group using a protocol that has limited or no defined procedures for passing state information between the client and the servers;
means for maintaining client state information;
means for transmitting a request for an action requiring participation by a plurality of servers from the client to a first server of the server group; and
means for communicating among the servers, wherein said plurality of servers includes said first server and at least one other server, said at least one other server including at least one controller server, and wherein said communicating procedure includes said at least one controller server coordinating actions of the plurality of servers in response to the request.
-
-
35. An article of manufacture comprising one or more computer usable mediums having computer readable program code embodied therein, said computer readable program code including:
-
means for allowing a computer to operate as a server;
means for allowing said server to communicate with another computer having a client application executing thereon using a protocol that has limited or no defined procedures for passing state information between the server and the client;
means for allowing said server to maintaining client state information;
means for allowing said server to preserve state information in a conversation with said means for allowing said server to receive a request for an action from said client; and
means for coordinating the actions of a plurality of servers in response to said request.
-
Specification