System and method for state saves in a distributed data system
First Claim
1. A system, comprising:
- a distributed store configured to store a primary state of session data configured for access by a plurality of application servers, wherein the session data comprises one or more attributes;
a first application server of the plurality of application servers coupled to the distributed store, and configured to store a client state of the session data comprising one or more attributes, wherein the first application server is configured to provide processes executing within the first application server with access to the client state of the session data;
wherein the first application server is configured to;
track mutable accesses of the attributes in the client state of the session data;
perform an object graph comparison of mutably accessed attributes of the client state of the session data with a benchmark version of the client state of the session data to determine a subset of modified attributes, wherein the benchmark version of the client state of the session data comprises a previous version of the attributes in the client state of the session data; and
wherein the distributed store is configured to synchronize the primary state of the session data with the client state of the session data according to the subset of modified attributes.
2 Assignments
0 Petitions
Accused Products
Abstract
A client-server system may include a primary state of session data. One or more application servers may include client states of the session data and may be configured to access the primary state. The session data may include one or more attributes. The distributed store may lock the primary state for access by a process executing on one of the application servers. Information may be maintained on which attributes are mutably accessed by the process. An object graph comparison of the mutably accessed attributes and a benchmark version of the attributes may be performed to determine which of the mutably accessed attributes were actually modified. The modified attributes may be used to synchronize the primary state with the client state.
238 Citations
48 Claims
-
1. A system, comprising:
-
a distributed store configured to store a primary state of session data configured for access by a plurality of application servers, wherein the session data comprises one or more attributes; a first application server of the plurality of application servers coupled to the distributed store, and configured to store a client state of the session data comprising one or more attributes, wherein the first application server is configured to provide processes executing within the first application server with access to the client state of the session data; wherein the first application server is configured to; track mutable accesses of the attributes in the client state of the session data; perform an object graph comparison of mutably accessed attributes of the client state of the session data with a benchmark version of the client state of the session data to determine a subset of modified attributes, wherein the benchmark version of the client state of the session data comprises a previous version of the attributes in the client state of the session data; and wherein the distributed store is configured to synchronize the primary state of the session data with the client state of the session data according to the subset of modified attributes. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13)
-
-
14. A system, comprising:
-
a plurality of application servers, wherein each of the plurality of application servers comprises a client state of session data comprising one or more attributes, wherein each of the application servers is configured to provide access to the corresponding client state of session data to processes executing within the particular application server; a distributed store coupled to the plurality of application servers, comprising a primary state of the session data configured for access by the plurality of application servers; wherein each of the plurality of application servers is configured to; track mutable accesses of the attributes in the client state of session data of the particular application server; perform an object graph comparison of mutably accessed attributes with a benchmark version of the client state of session data to determine a subset of modified attributes, wherein the benchmark version of the client state of session data comprises a previous version of the attributes in the client state of session data; wherein the distributed store is configured to synchronize the primary state of session data with the client state of session data according to the subset of modified attributes. - View Dependent Claims (15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25)
-
-
26. A system, comprising:
-
means to lock access to a primary state of session data configured for access by a plurality of application servers for a process executing on one of the plurality of application servers, wherein the session data comprises a plurality of attributes; wherein, while the primary state of the session data is locked for the process, other processes cannot access the primary state of the session data; wherein each of the plurality of application servers comprises a client state of the session data accessible to processes executing within the application server; means for each of the application servers to; track accesses of mutable attributes in the client state of the session data; determine a set of mutably accessed attributes of the client state of the session data of the particular application server; determine a subset of the set of mutably accessed attributes that are modified in respect to the primary state of the session data; and means to synchronize the primary state of the session data with the client state of the session data using the subset of modified attributes. - View Dependent Claims (27, 28)
-
-
29. A computer implemented method, comprising:
-
tracking mutable accesses of a plurality of attributes of a client state of session data, wherein the client state of the session data is associated with an application server; performing an object graph comparison of mutably accessed attributes with a benchmark version of the client state of the session data to determine a subset of modified attributes, wherein the benchmark version of the client state of the session data comprises a previous version of the attributes in the client state of the session data; and synchronizing a primary state of the session data with the client state of the session data according to the subset of modified attributes, wherein the primary state of the session data is accessible by a plurality of application servers. - View Dependent Claims (30, 31, 32, 33, 34, 35, 36, 37, 38)
-
-
39. A tangible, computer accessible storage medium, storing software instructions computer-executable to implement:
-
tracking mutable accesses of a plurality of attributes of a client state of session data, wherein the client state of the session data is associated with an application server; performing an object graph comparison of mutably accessed attributes with a benchmark version of the client state of the session data to determine a subset of modified attributes, wherein the benchmark version of the client state of the session data comprises a previous version of the attributes in the client state of the session data; and synchronizing a primary state of the session data with the client state of the session data using the subset of modified attributes, wherein the primary state of the session data is accessible by a plurality of application servers. - View Dependent Claims (40, 41, 42, 43, 44, 45, 46, 47, 48)
-
Specification