Patent ID: 7702791
Filing Date: 2010-04-20
Classification: G06F,H04L

Abstract:
1. A system for replicating information in a client session, comprising: a plurality of servers; a primary server in said plurality of servers, said primary server storing session information for a client session; a secondary server in said plurality of servers, said secondary server storing session information for the client session; and a hardware load balancer receiving a request from a client, the request containing identification information particularly identifying said primary and secondary servers, the hardware load balancer attempts to serve the request on the primary server, and when the primary server is unable to receive or respond to the request, the hardware load balancer then selects a new primary server and serves the request on the new primary server instead of using the secondary server, session information is sent from the secondary server to the new primary server, the new primary server then responds to the request and sends updated session information to the secondary server so that the new primary server and secondary server are in sync with regard to that session, the request from the client being sent before a determination that the primary server is unable to receive or respond to requests; wherein the selection of the new primary server is automatic and not in response to administrator input; wherein a change in session information is associated with a version number, the primary and secondary servers modify the session information if the primary and secondary servers receive a request that has a version number higher than a version number that the primary and secondary servers are currently storing; wherein the primary and secondary servers periodically check each other to ensure that they are both on the same version number; wherein, when the version numbers are out of synchronization between the primary and secondary servers, the primary server sends information to the secondary server to bring the session back into synchronization; and wherein the system further comprises a cookie adapted to be stored on the client and to contain the identification information for the new primary and secondary servers, wherein the cookie contains a number that is the sum of a number for the new primary server and a number for the secondary server.