Server-Side Widget Caching for Faster Dashboard Data Refresh

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

As enterprise web applications grow in complexity, the volume of data transmitted to client devices increases, leading to server delays and long response times, particularly for frequent users of dashboard-type interfaces that rely on data from multiple sources with varying update frequencies and network latencies.

Innovation Solution

Implementing a server-side cache that asynchronously refreshes in the background, allowing immediate display of relevant, potentially stale data, followed by subsequent updates with up-to-date information, and employing a queue management system to manage cache refresh requests efficiently.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If data is transmitted from server to client for each dashboard widget, then data accuracy is improved, but response time increases and server load increases

Engineering Contradiction:
Improvedata accuracyVSAvoidresponse time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The server pre-loads and caches widget data before the client actually requests it. When a dashboard is accessed, the server initiates data retrieval and caching operations in advance, so that when the client requests the data, it is already available or nearly available, significantly reducing response time while maintaining data accuracy.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

An intermediary caching mechanism is introduced between the server and client. The cache serves as a buffer that stores widget data temporarily, allowing the server to serve data from the cache rather than querying data sources for every client request. This intermediary layer reduces server load and response time while maintaining data accuracy through periodic refreshes.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Measurement precision

If server processes all data requests synchronously, then data accuracy is improved, but server scalability worsens

Engineering Contradiction:
Improvedata accuracyVSAvoidserver scalability
Core Design Contradiction:
Measurement precisionVSProductivity

Solution Approach 1:

The server performs data retrieval and caching operations in advance, before actual client requests are processed. This pre-loading strategy ensures data is ready when needed, maintaining accuracy while avoiding synchronous processing bottlenecks during peak usage, thereby improving server scalability.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The caching system operates continuously in the background, periodically refreshing and updating widget data without waiting for client requests. This continuous operation ensures data remains accurate while the server can handle multiple client requests concurrently without being blocked by data retrieval operations, enhancing scalability.

Inventive Principle:
Principle #20Continuity of useful action

3Measurement precision

If cache is refreshed synchronously before data transmission, then data accuracy is improved, but response time increases

Engineering Contradiction:
Improvedata accuracyVSAvoidresponse time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The cache refresh operation is initiated in advance and executed asynchronously in the background. The server starts the refresh process before the client requests data, and the refresh completes in the background without blocking the data transmission to the client. This ensures data accuracy is improved through refreshing while response time is minimized since the refresh doesn't block the client request.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The cache refresh operates continuously and asynchronously, maintaining data accuracy without interrupting or delaying client data requests. The server can serve data from the cache while simultaneously refreshing it in the background, ensuring both accuracy and fast response times are achieved.

Inventive Principle:
Principle #20Continuity of useful action

Data Source

PatentUS12470638B2Server-side caching for web user interfaces
Publication Date: 2025.11.11 NASDAQ INC
  • US12470638B2 patent drawing
  • US12470638B2 patent drawing
  • US12470638B2 patent drawing

AI summary

The described technology relates to rendering a client-side user interface using a server-side cache for providing the displayed data. In an example implementation, in response to a user interface (e.g., dashboard with multiple widgets in a web application) being launched on the client device, the server initiates a refresh of the cache for the widgets; and transmits a first set of data obtained from the cache for widgets in the user interface before the cache is updated in response to the initiated refresh. The first set of data is followed by a second set of data obtained from the cache for at least some of the widgets after the cache is updated in response to the initiated refresh. The client displays the user interface using the second set of data while overwriting, for one or more of the widgets, information previously displayed using the first set of data.