Determining a backup server for a session based on a deterministic mechanism and the session's key value
First Claim
1. A machine-implemented method, comprising:
- receiving, by a first backup server, a first request comprising a first session key value and a first primary server identifier, wherein the first backup server is one of a plurality of servers;
making a first determination, by the first backup server, that the first request is associated with a first primary server based on the first primary server identifier, wherein the first primary server is one of the plurality of servers;
making a second determination, by the first backup server, that the first primary server is not currently operational;
generating, by the first backup server based on the second determination, a first ordering of potential backup servers by applying a deterministic algorithm to the first session key value;
selecting, by the first backup server, a second backup server based on a first-ordered value from the first ordering of potential backup servers, wherein the second backup server is one of the plurality of servers;
sending, by the first backup server based on the selecting, the first request to the second backup server;
receiving, by the second backup server, the first request;
making a third determination, by the second backup server, that the first request is associated with the first primary server based on the first primary server identifier;
making a fourth determination, by the second backup server, that the first primary server is not currently operational;
generating, by the second backup server based on the fourth determination, the first ordering of potential backup servers by applying the deterministic algorithm to the first session key value;
obtaining the first-ordered value from the first ordering of potential backup servers; and
processing, by the second backup server, the first request based on a determination that the first-ordered value from the first ordering of potential backup servers is associated with the second backup server.
2 Assignments
0 Petitions
Accused Products
Abstract
A mechanism is disclosed for determining, based on a deterministic mechanism and a session'"'"'s key value, a backup server for the session. In one embodiment, each session has a different key value, and each key value can be processed through the deterministic mechanism to give rise to a separate ordering of a result value set. Each server of a plurality of servers is associated with a different one of the set'"'"'s values. A request pertaining to a particular session is received. The request indicates the particular session'"'"'s key value. The deterministic mechanism can generate result values, in a particular order to which the session'"'"'s key value gives rise, until a result value associated with a currently operational server is generated. The request is sent to that server if the request'"'"'s primary server is not currently operational. A pseudo-random number generator seeded with the key value may generate the result values.
12 Citations
15 Claims
-
1. A machine-implemented method, comprising:
-
receiving, by a first backup server, a first request comprising a first session key value and a first primary server identifier, wherein the first backup server is one of a plurality of servers; making a first determination, by the first backup server, that the first request is associated with a first primary server based on the first primary server identifier, wherein the first primary server is one of the plurality of servers; making a second determination, by the first backup server, that the first primary server is not currently operational; generating, by the first backup server based on the second determination, a first ordering of potential backup servers by applying a deterministic algorithm to the first session key value; selecting, by the first backup server, a second backup server based on a first-ordered value from the first ordering of potential backup servers, wherein the second backup server is one of the plurality of servers; sending, by the first backup server based on the selecting, the first request to the second backup server; receiving, by the second backup server, the first request; making a third determination, by the second backup server, that the first request is associated with the first primary server based on the first primary server identifier; making a fourth determination, by the second backup server, that the first primary server is not currently operational; generating, by the second backup server based on the fourth determination, the first ordering of potential backup servers by applying the deterministic algorithm to the first session key value; obtaining the first-ordered value from the first ordering of potential backup servers; and processing, by the second backup server, the first request based on a determination that the first-ordered value from the first ordering of potential backup servers is associated with the second backup server. - View Dependent Claims (2, 7, 8, 9)
-
-
3. A non-transitory machine-readable medium, comprising instructions, which when executed by a processor perform a method, the method comprising:
-
receiving, by a first backup server, a first request comprising a first session key value and a first primary server identifier, wherein the first backup server is one of a plurality of servers; making a first determination, by the first backup server, that the first request is associated with a first primary server based on the first primary server identifier, wherein the first primary server is one of the plurality of servers; making a second determination, by the first backup server, that the first primary server is not currently operational; generating, by the first backup server based on the second determination, a first ordering of potential backup servers by applying a deterministic algorithm to the first session key value; selecting, by the first backup server, a second backup server based on a first-ordered value from the first ordering of potential backup servers, wherein the second backup server is one of the plurality of servers; sending, by the first backup server based on the selecting, the first request to the second backup server; receiving, by the second backup server, the first request; making a third determination, by the second backup server, that the first request is associated with the first primary server based on the first primary server identifier; making a fourth determination, by the second backup server, that the first primary server is not currently operational; generating, by the second backup server based on the fourth determination, the first ordering of potential backup servers by applying the deterministic algorithm to the first session key value; obtaining, the first-ordered value from the first ordering of potential backup servers; and processing, by the second backup server, the first request based on a determination that the first-ordered value is associated with the second backup server. - View Dependent Claims (4, 10, 11, 12)
-
-
5. An apparatus comprising:
-
a first backup server configured to; receive a first request comprising a first session key value and a first primary server identifier; make a first determination that the first request is associated with a first primary server based on the first primary server identifier, wherein the first primary server is one of a plurality of servers; make a second determination that the first primary server is not currently operational; generate a first ordering of potential backup servers by applying a deterministic algorithm to the first session key value; select a second backup server based on a first-ordered value from the first ordering of potential backup servers; send the first request to the second backup server; the second backup server configured to; receive the first request; make a third determination that the first request is associated with the first primary server based on the first primary server identifier; make a fourth determination that the first primary server is not currently operational; generate, based on the fourth determination, the first ordering of potential backup servers by applying the deterministic algorithm to the first session key value; obtain the first-ordered value from the first ordering of potential backup servers; and process the first request based on a determination that the first-ordered value is associated with the second backup server. - View Dependent Claims (6, 13, 14, 15)
-
Specification