Distributed session failover
First Claim
1. A method for obtaining session information, comprising:
- receiving, by a first session server, a first request from a client to access one or more services, wherein the request comprises information indicating a particular session, wherein the particular session was previously established by a second session server;
determining, by the first session server, that the second session server failed, wherein the session information associated with the particular session is stored on the second session server;
in response to the determination that the second session server failed, sending, by the first session server, a second request to a bus mechanism to obtain the session information, wherein the session information is stored in at least one of a plurality of persistent repositories, wherein the first session server is unaware of the plurality of persistent repositories, and wherein the first session server does not interact with any of the plurality of persistent repositories;
in response to receiving the second request;
selecting, by the bus mechanism, a target persistent repository of the at least one of the plurality of persistent repositories;
retrieving, by the bus mechanism, the session information from the target persistent repository;
receiving, by the first session server, the session information from the bus mechanism; and
determining, by the first session server using the session information, whether the client should be allowed to access the one or more services,wherein the first session server is executing on a first computer system, wherein the second session server is executing on a second computer system, and wherein the bus mechanism is executing on a third computer system.
2 Assignments
0 Petitions
Accused Products
Abstract
A distributed session failover mechanism is disclosed for facilitating the replication and retrieval of session information. A first server, in a trusted network, providing a single sign-on (SSO) solution, stores session information pertaining to a particular client requesting services associated with the server. In order to provide session failover, the first server sends a copy of the session information to a bus mechanism, which is connected to one or more persistent repositories. When a second server attempts to validate the client, the second server may discover that the first server failed. The second server then requests a copy of the session information pertaining to the client from the bus mechanism. The bus mechanism retrieves the copy from a persistent repository and provides the copy to the second server.
15 Citations
12 Claims
-
1. A method for obtaining session information, comprising:
-
receiving, by a first session server, a first request from a client to access one or more services, wherein the request comprises information indicating a particular session, wherein the particular session was previously established by a second session server; determining, by the first session server, that the second session server failed, wherein the session information associated with the particular session is stored on the second session server; in response to the determination that the second session server failed, sending, by the first session server, a second request to a bus mechanism to obtain the session information, wherein the session information is stored in at least one of a plurality of persistent repositories, wherein the first session server is unaware of the plurality of persistent repositories, and wherein the first session server does not interact with any of the plurality of persistent repositories; in response to receiving the second request; selecting, by the bus mechanism, a target persistent repository of the at least one of the plurality of persistent repositories; retrieving, by the bus mechanism, the session information from the target persistent repository; receiving, by the first session server, the session information from the bus mechanism; and determining, by the first session server using the session information, whether the client should be allowed to access the one or more services, wherein the first session server is executing on a first computer system, wherein the second session server is executing on a second computer system, and wherein the bus mechanism is executing on a third computer system. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A machine implemented method for carrying out distributed session failover by a first server, comprising:
-
storing, by a second server, session information associated with a particular session; providing, by the second server, the session information to a bus mechanism; causing, by the bus mechanism, the session information to be stored in at least one of a plurality of persistent repositories, wherein the second server is unaware of the plurality of persistent repositories, and wherein the second server does not interact with any persistent repository in the plurality of persistent repositories; receiving, by the first server, a first request from a client for services associated with the first server, wherein the client is associated with the particular session; determining, by the first server, that the second server failed; sending, by the first server in response to the determination, a second request to the bus mechanism to obtain the session information, wherein the first server is unaware of the plurality of persistent repositories, and wherein the first server does not interact with any persistent repository in the plurality of persistent repositories; in response to receiving the second request; selecting, by the bus mechanism, a target persistent repository of the at least one of the plurality of persistent repositories; retrieving, by the bus mechanism, the session information from the target persistent repository; and providing, by the bus mechanism, the session information to the first server, wherein the first server is executing on a first computer system, wherein the second server is executing on a second computer system, and wherein the bus mechanism is executing on a third computer system.
-
-
7. A non-transitory machine readable medium, comprising instructions for causing one or more processors to:
-
receive, by a first session server, a first request from a client for services associated with the first session server, wherein the client is associated with a particular session; determine that a second session server failed, wherein the second session server has stored session information associated with the particular session; send, by the first session server in response to the determination, a second request to a bus mechanism to obtain the session information, wherein the session information is stored in at least one of a plurality of persistent repositories, wherein the first session server is unaware of the plurality of persistent repositories, and wherein the first session server does not interact with any persistent repository in the plurality of persistent repositories; in response to receiving the second request; select, by the bus mechanism, a target persistent repository of the at least one of the plurality of persistent repositories; retrieve, by the bus mechanism, the session information from the target persistent repository; receive, by the first session server, the session information from the bus mechanism; and determine, by the first session server using the session information, whether the client should be allowed to access the services, wherein the first session server is executing on a first computer system, wherein the second session server is executing on a second computer system, and wherein the bus mechanism is executing on a third computer system. - View Dependent Claims (8, 9, 10, 11)
-
-
12. A system, comprising:
-
a first session server executing on a first computer system, configured to; receive a first request from a client to access one or more services, wherein the request comprises information indicating a particular session, wherein the particular session was previously established by a second session server; determine that the second session server failed, wherein session information associated with the particular session is stored on the second session server; send, in response to the determination that the second server failed, a second request to a bus mechanism to obtain the session information, wherein the session information is stored in a plurality of persistent repositories, wherein the first session server is unaware of the plurality of persistent repositories, and wherein the first session server does not interact with any of the plurality of persistent repositories; receive the session information from the bus mechanism, wherein the bus mechanism retrieves the session information from at least one of the plurality of persistent repositories; and use the session information to determine whether the client should be allowed to access the one or more services; the second session server executing on a second computer system; and the bus mechanism, executing on a third computer system, configured to; store session information associated with the particular session; in response to receiving the second request; select a target persistent repository of the plurality of persistent repositories from which to retrieve the session information; and retrieve, the session information from the target persistent repository.
-
Specification