Pre-render Server Web Page Display Optimization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Web pages, especially rich and dynamic ones, take time to load due to the need to obtain and render numerous sub-resources, leading to undesirable delays in user experience, and pre-rendering on user devices can be resource-intensive, particularly for mobile devices.

Innovation Solution

A system involving a web client, web server, and pre-render server where the pre-render server provides a pre-rendered version of a web page, allowing the user to view it quickly while the actual resources are being obtained and rendered, with the pre-rendered version being replaced by the freshly rendered page upon completion.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of time

If pre-rendering is performed on user devices to reduce web page display times, then web page loading speed is improved, but system resources on user devices are overburdened

Engineering Contradiction:
Improveweb page display timeVSAvoidsystem resources on user device
Core Design Contradiction:
Loss of timeVSUse of energy by moving object

Solution Approach 1:

A pre-render server is introduced as an intermediary between the web server and user devices. The pre-render server performs the resource-intensive pre-rendering operations, receiving requests from user devices and returning pre-rendered web pages. This transfers the computational burden from user devices to the server infrastructure, resolving the contradiction between fast loading and resource conservation on client devices.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If all sub-resources are obtained and rendered for each web page request, then complete web page functionality is achieved, but web page loading time increases

Engineering Contradiction:
Improveweb page functionalityVSAvoidweb page loading time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system performs preliminary rendering of web pages and their sub-resources in advance, storing the rendered output on the pre-render server. When a user requests a web page, the pre-rendered version is immediately returned, eliminating the need to obtain and render all sub-resources at the moment of user access. This ensures complete functionality is available while dramatically reducing loading time.

Inventive Principle:
Principle #10Preliminary action

3Loss of time

If a pre-rendered version of a web page is provided for display, then web page display time is reduced, but the pre-rendered version may become outdated compared to the current web page

Engineering Contradiction:
Improveweb page display timeVSAvoidweb page content accuracy
Core Design Contradiction:
Loss of timeVSLoss of information

Solution Approach 1:

The system implements periodic re-rendering of web pages on the pre-render server, updating pre-rendered versions at scheduled intervals or when content changes are detected. This ensures that while pre-rendered pages provide immediate display (reducing time loss), the content remains relatively current through regular updates, balancing speed with information accuracy.

Inventive Principle:
Principle #19Periodic action

Data Source

PatentEP3491544B1Web page display systems and methods
Publication Date: 2022.09.07 GOOGLE LLC
  • EP3491544B1 patent drawingFigure 1
  • EP3491544B1 patent drawingFigure 2~3
  • EP3491544B1 patent drawingFigure 4

AI summary

Aspects of the subject technology relate to web page display. A pre-render server may generate and store pre-rendered versions of web pages in a pre-render cache. To display a web page, a web client may concurrently send a pre-render request for the web page to the pre-render server and a request for the web page to a web server of the web page. The web client may receive a pre-rendered version of the web page from the pre-render server and a response from the web server. The web client may provide the pre-rendered version of the web page for display while rendering the web page, in the background, based on the response from the web server. Upon completion of the rendering, the web client may provide the freshly rendered web page for display in place of the pre-rendered version.