Polling Server Mediator for Database Update Scalability
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current data refresh mechanisms in web applications are inefficient, as they often require frequent and costly refresh requests to application servers, which can lead to system slowdowns and fail to address non-local data changes in a timely manner, especially as the number of users increases.
Innovation Solution
Implementing a polling server that communicates with application servers and client systems to reduce the frequency of refresh requests by allowing client systems to query for data changes, thereby controlling the number of requests sent to the application server and improving the responsiveness of data updates.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If data pages refresh themselves periodically by sending update requests to application servers, then data changes are reflected in displayed pages, but the system becomes expensive and difficult to sustain as the number of users scales up
Solution Approach 1:
The patent introduces a polling server as an intermediary component between client systems and application servers. The polling server receives and processes polling requests from multiple clients, then sends consolidated update requests to application servers only when data changes are detected. This intermediary architecture reduces the number of direct requests to application servers, improving scalability while maintaining data update reliability.
2Speed
If the refresh period is decreased from 15 minutes to every minute or 30 seconds, then data changes are reflected more quickly, but the impact on application servers slows down the entire system
Solution Approach 1:
The patent implements a feedback mechanism where the polling server monitors for data changes and only triggers refresh requests when updates are detected. Instead of periodic forcing refreshes, the system uses event-driven feedback from data change notifications. This allows fast data reflection when changes occur while avoiding unnecessary requests during stable states, maintaining both speed and system performance.
3Reliability
If client systems send frequent refresh requests to application servers, then data is updated more frequently, but the number of requests increases and slows down the application servers
Solution Approach 1:
The polling server acts as a mediator that consolidates multiple client polling requests into fewer update requests to application servers. When multiple clients poll for updates, the polling server detects data changes through its subscription mechanism and sends a single batched update request to the application server, reducing the total request quantity while maintaining data freshness for all clients.
Solution Approach 2:
The patent merges multiple individual client polling operations into a single centralized polling service. Instead of each client independently querying application servers, all polling activities are combined through the polling server, which then consolidates update requests. This merging reduces the overall number of requests to application servers while maintaining the same data freshness level.
Data Source
AI summary
Systems and methods for automatically polling for data changes in an on-demand database service environment. A polling server communicates with application servers and client systems. Application servers send update messages to the polling server identifying which database objects have been updated, and client systems communicate with the polling server on a regular basis, rather than with the application server, to determine whether updates to a data object may have been made. When it has been determined that an update may have been made, the client system then sends a refresh request to the application server to request an update to the data object, thereby controlling (e.g., reducing) the number of refresh requests sent to the application server.


