Session State Backup via DOM Extraction
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current computing systems are dependent on physical devices, leading to data loss when devices are misplaced or become inoperable, and moving session states between devices is cumbersome for users.
Innovation Solution
The system provides session state information to a server by accessing the Document Object Model (DOM) of web applications, determining predetermined events to update the session state, and sending contextual information to differentiate between session states, allowing seamless state restoration across devices.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If session state information is stored locally on physical devices, then data access is fast and simple, but data is lost when devices are misplaced or become inoperable
Solution Approach 1:
A server acts as an intermediary between multiple client devices and session state information. The server stores session state data centrally, allowing clients to access and restore sessions across different devices. This mediator approach prevents data loss when individual devices fail or are lost, as the session state persists on the server.
Solution Approach 2:
The system creates and maintains copies of session state information on a server, separate from the original client devices. When a user logs in from any device, the system retrieves the session state copy from the server and restores it locally. This copying mechanism ensures data preservation while enabling cross-device accessibility.
2Reliability
If session state information is synchronized in real-time across all devices, then data consistency is maintained, but network bandwidth and system resources are consumed continuously
Solution Approach 1:
Instead of continuous real-time synchronization, the system uses event-driven periodic updates. Session state information is transmitted to the server only when specific events occur, such as user login, state changes, or device connection. This approach maintains data consistency while significantly reducing network bandwidth consumption compared to continuous synchronization.
3Reliability
If complete session state information is transmitted to the server, then data integrity is ensured, but network traffic and server storage requirements increase
Solution Approach 1:
The system extracts and transmits only the essential session state information required for restoration to the server, rather than transmitting complete device states. By identifying and sending only critical session data (such as application states, user preferences, and contextual information), the system maintains data integrity for recovery purposes while minimizing network traffic and server storage requirements.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
Providing state information to a server includes accessing a document object model (DOM) for a web application, the DOM corresponding to a tree structure which represents a first state of the web application. An indication of the first state of the web application is provided to a server based on the DOM. A determination is made that a predetermined event has occurred at the system, the predetermined event indicating that a second state of the web application, different than the first state of the web application, is to be provided to the server. In response to the determination, an indication of the second state of the web application, corresponding to an updated version of the DOM, is provided to the server.