Shared State Server Data Grid Synchronization
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current synchronization methods for application state information across multiple devices are inefficient and unpredictable, leading to inconsistent user experiences and unnecessary periodic synchronization processes.
Innovation Solution
A method and system that utilize a shared state server and data grid architecture to distribute state information across partitions, allowing for efficient and scalable synchronization by using an in-memory cache and routing table to determine the location of requested state information, eliminating the need for periodic synchronization.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If periodic synchronization is used to maintain application state consistency across multiple devices, then synchronization reliability is improved, but synchronization timing becomes unpredictable and efficiency deteriorates
Solution Approach 1:
The patent implements periodic synchronization where application instances on different devices periodically communicate with a remote service to exchange state information. This periodic action ensures that state changes are propagated across devices at regular intervals, maintaining consistency while allowing the system to function efficiently between synchronization cycles.
Solution Approach 2:
The synchronization mechanism uses feedback by having application instances report their state changes to a remote service, which then notifies other instances. This feedback loop ensures that state information is propagated reliably across devices, with each instance receiving updates about changes made on other devices.
2Reliability
If remote service interface is used for synchronization, then application state can be synchronized across devices, but synchronization timing becomes unpredictable
Solution Approach 1:
The patent establishes a remote service interface in advance that application instances can use for synchronization. This preliminary setup allows instances to synchronize at predictable intervals or upon specific events, rather than waiting for unpredictable conditions. The remote service is pre-configured to handle state exchange, enabling timely and predictable synchronization.
3Reliability
If multiple application instances synchronize periodically, then state consistency is maintained, but unnecessary synchronization processes occur
Solution Approach 1:
The patent implements synchronization that performs only the necessary state exchange rather than complete periodic synchronization. Instances synchronize state information selectively, updating only when changes occur rather than performing full synchronization cycles regardless of state changes. This partial action approach maintains consistency while reducing unnecessary computational overhead.
Data Source
AI summary
A method, system and computer program product for implementing synchronization of state information in an efficient, scalable manner. A shared state server receives a request from a client device to access a scope containing state information. The scope is distributed over a partition(s) via the use of a "data grid" thereby increasing scalability. The shared state server relays the request to a data grid server responsible for maintaining the data grid comprised of an in-memory cache and partitions outside of the in-memory cache. The request includes a key associated with a value corresponding to the requested state information. The data grid server obtains the value associated with the key from its data grid and sends it to the shared state server to be relayed to the requesting client device. In this manner, the state information is stored in a scalable manner thereby improving the efficiency in synchronizing state information.


