Selective Cached Resource Request Handling

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Users often encounter unhelpful error pages when requesting unavailable resources on the internet, as servers fail to provide customized or informative responses, leading to a poor user experience and lack of access to cached resources.

Innovation Solution

A user device selectively requests a cached version of the resource from a different domain if the server fails to respond or provides an uninformative error page, using methods to determine cache request conditions based on response data, such as standard HTTP status codes or publisher-provided customized messages, to display a cached version of the resource.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If the server removes a resource or provides a standard error page, then the server can manage its content and reduce storage requirements, but the user experience deteriorates with vague and unhelpful error messages

Engineering Contradiction:
Improveresource storage on serverVSAvoiduser experience
Core Design Contradiction:
Quantity of substanceVSEase of operation

Solution Approach 1:

The patent introduces a cache server as an intermediary between the user device and the original server. When a resource is unavailable at the original server, the cache server provides a cached version of the resource to the user device, thereby maintaining good user experience without requiring the original server to store all resources permanently.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent creates and stores copies of resources on a cache server at a different domain. When the original resource is unavailable, users can access the copied version from the cache server, resolving the contradiction between server storage reduction and user access availability.

Inventive Principle:
Principle #26Copying

2Loss of energy

If the server fails to provide response data or times out, then network resources are conserved and server load is reduced, but the user receives no content and experiences poor usability

Engineering Contradiction:
Improvenetwork and server resource consumptionVSAvoidusability
Core Design Contradiction:
Loss of energyVSEase of operation

Solution Approach 1:

The patent performs preliminary actions by caching resources on the cache server before they are needed. The cache server proactively stores resource copies in advance, so when the original server is unavailable or times out, the cached copy is already available to serve the user immediately without requiring additional network requests or server processing.

Inventive Principle:
Principle #10Preliminary action

3Reliability

If the user device always requests cached versions of resources, then resource availability is improved, but the system complexity increases with additional cache server interactions

Engineering Contradiction:
Improveresource availabilityVSAvoidsystem architecture
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent applies local quality by implementing selective caching strategies where different resources are cached based on their specific characteristics, access patterns, and importance. The cache server and user device determine whether to request cached versions based on the specific resource and context, rather than uniformly caching all resources, thereby balancing reliability improvement with system complexity management.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS8880635B1Selective requesting of cached resources
Publication Date: 2014.11.04 GOOGLE LLC
  • US8880635B1 patent drawing
  • US8880635B1 patent drawing
  • US8880635B1 patent drawing

AI summary

Methods, systems, and apparatus for selectively requesting cached versions of resources. In one aspect, a method includes transmitting, by a user device, a resource request for a resource hosted by a first server; determining whether the first server provided response data; in response to determining that the first server provided response data: determining whether a cache request condition has occurred; in response to determining that a cache request condition has occurred: transmitting a request for a cached version of the resource to a cache server; and receiving cache data that causes the user device to display the cached version of the resource; and in response to determining that the first server did not provide response data: transmitting a request for a cached version of the resource to the cache server; and receiving cache data that causes the user device to display the cached version of the resource.