Application State Synchronization via Priority-Based Event Push

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current timer-based state synchronization methods in browser-based applications are inefficient, as they send nearly the same amount of data between the browser and server periodically, regardless of whether the application state has changed, leading to wasted processing power and network capacity, and increased response latency for users.

Innovation Solution

A method and apparatus that prioritize and selectively send responses to clients based on a history of received update requests, synchronizing the state with a data source only when changes occur, reducing unnecessary requests and responses.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If timer-based periodic requests are used for state synchronization, then the application state is kept updated with the server, but large amounts of data are transmitted unnecessarily even when state has not changed

Engineering Contradiction:
Improvestate synchronization reliabilityVSAvoidnetwork transportation capacity
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The patent replaces continuous periodic timer-based requests with event-driven periodic action. The server now pushes updates only when state changes occur, rather than pulling data continuously. This maintains synchronization reliability while eliminating unnecessary network transactions when state remains unchanged.

Inventive Principle:
Principle #19Periodic action

Solution Approach 2:

The patent implements a feedback mechanism where the server monitors state changes and pushes updates back to clients only when necessary. The server tracks which clients need updates and sends targeted responses, creating a feedback loop that reduces unnecessary data transmission while maintaining synchronization.

Inventive Principle:
Principle #23Feedback

2Reliability

If timer-based periodic requests are used for state synchronization, then the application state is kept updated with the server, but computing processing power and network transportation capacity are wasted

Engineering Contradiction:
Improvestate synchronization reliabilityVSAvoidprocessing efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent transforms continuous periodic polling into event-driven periodic action. The server pushes updates only when state changes occur, eliminating wasted processing power during periods when state remains unchanged. This maintains synchronization reliability while significantly improving processing efficiency.

Inventive Principle:
Principle #19Periodic action

Solution Approach 2:

The server performs self-service by autonomously detecting state changes and pushing updates without waiting for client requests. This eliminates the need for continuous client-initiated polling, reducing wasted processing power and network capacity while maintaining synchronization.

Inventive Principle:
Principle #25Self-service

3Reliability

If timer-based periodic requests are used for state synchronization, then the application state is kept updated with the server, but response latency for user interaction increases

Engineering Contradiction:
Improvestate synchronization reliabilityVSAvoidresponse latency
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent replaces continuous polling with event-driven periodic action. When state changes occur, the server immediately pushes updates to clients, reducing response latency. This maintains synchronization reliability while eliminating the time waste associated with continuous timer-based requests.

Inventive Principle:
Principle #19Periodic action

Solution Approach 2:

The server performs preliminary action by proactively pushing updates before clients might request them. By monitoring state changes and pushing updates in advance to waiting clients, the system reduces response latency while maintaining synchronization reliability.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS7774356B2Method and apparatus for application state synchronization
Publication Date: 2010.08.10 SAP SE
  • US7774356B2 patent drawing
  • US7774356B2 patent drawing
  • US7774356B2 patent drawing

AI summary

A method and an apparatus that synchronize an application state in a client with a data source in a backend system in an asynchronous manner are described. A response is sent to the client based on a priority determined according to a history of received update requests. When a notification message from a data source in a backend system is received, an update request is selected from a plurality of update requests currently pending to be served according to the priority associated with each update request. A response is sent to the client over a network corresponding to the selected update request. The response includes state updates according to the changes in the data source and the current application state in the corresponding client.