Pre-fetching Browser Objects to Reduce Page Load Time

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Users experience delays when receiving large amounts of data over networks, such as during e-commerce transactions or downloading digital files, due to the time required for data transmission, especially for dial-up and low broadband users.

Innovation Solution

Implementing a pre-fetching system that proactively downloads and caches browser objects in anticipation of user navigation, allowing for faster page loading by storing data in the user's memory device before it is requested, thus reducing wait times and improving performance.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of time

If data is transmitted over the network from server to user computer, then the user can access and view the data, but the user experiences delays and waits for large amounts of data to be transmitted

Engineering Contradiction:
Improvepage load timeVSAvoiddata transmission speed
Core Design Contradiction:
Loss of timeVSProductivity

Solution Approach 1:

The system performs preliminary action by pre-fetching and caching browser objects (images, stylesheets, scripts) before the user actually needs them. The server proactively downloads and stores these objects in the user's browser cache in anticipation of their navigation, so when the user visits a page, the objects are already available locally, eliminating network transmission delays and reducing page load time.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system introduces an intermediary mechanism - the browser cache - between the server and the user's display. Instead of directly transmitting all data through the network, the cache acts as an intermediate storage layer that holds pre-fetched objects, allowing the user to access data from local storage rather than waiting for continuous network transmission.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Loss of time

If the system pre-fetches and caches browser objects in anticipation of user navigation, then page load times are reduced and user experience is enhanced, but the system complexity increases

Engineering Contradiction:
Improvepage load timeVSAvoidpre-fetching system complexity
Core Design Contradiction:
Loss of timeVSDevice complexity

Solution Approach 1:

The system implements self-service by having the browser automatically detect when objects need to be pre-fetched and cache them without requiring explicit user action. The browser's caching mechanism and the server's pre-fetching logic work autonomously based on navigation patterns and object availability, reducing the need for complex user interface controls or manual configuration.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The pre-fetching system achieves universality by handling multiple types of browser objects (images, stylesheets, scripts) through a unified caching mechanism. The same pre-fetching and caching infrastructure serves all object types, reducing overall system complexity compared to implementing separate handling for each object type.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Data Source

PatentUS10523779B2Method and system to pre-fetch data in a network
Publication Date: 2019.12.31 PAYPAL INC
  • US10523779B2 patent drawing
  • US10523779B2 patent drawing
  • US10523779B2 patent drawing

AI summary

A system, a computer readable storage medium including instructions, and a computer-implemented method of pre-fetching in a network, are provided. In an example embodiment, computer-implemented method of pre-fetching in a network comprises receiving a request from a user device for a first network-accessible data item in the plurality of network-accessible data items; transmitting the first network-accessible data item to the user device; identifying a second network-accessible data item in the plurality of network-accessible data items; and transmitting the second network-accessible data item to the user device, the second network-accessible data item being transmitted before receiving a request for the second network-accessible data item from the user device. Pre-fetch logic may be embedded in the first network-accessible data item.