Web Server Caching via Component Fragmentation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current caching systems for web servers set the Time To Live (TTL) of composite documents to the shortest TTL of their components, leading to premature retrieval from the web application and unnecessary rebuilding of unexpired components, and store duplicate resources indexed by different URLs, wasting cache space.

Innovation Solution

Implementing a front-end application that uses a rule set to cache and manage component resources of composite documents separately, allowing each resource to be fetched based on its individual TTL and sharing common resources across multiple documents, reducing unnecessary requests and storage of duplicates.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If the TTL of composite documents is set to the shortest TTL of their components, then the cache consistency is maintained, but unnecessary requests to the web application are generated and cache space is wasted

Engineering Contradiction:
Improvecache consistencyVSAvoidcache utilization efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent segments composite documents into individual component resources, each with its own TTL. Instead of treating the composite document as a single unit with the shortest TTL, each component (e.g., video clip, description, commentary) is cached separately with its own expiration time. This allows the cache to retain valid components beyond the expiration of the composite document, reducing unnecessary requests and improving cache utilization.

Inventive Principle:
Principle #1Segmentation

2Productivity

If component resources are cached separately with individual TTLs, then cache utilization is improved, but cache management complexity increases

Engineering Contradiction:
Improvecache utilization efficiencyVSAvoidcache management complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent introduces a rule set as an intermediary layer between the web application and the cache. The rule set contains predefined patterns that map composite document URLs to their component resources. When a composite document is requested, the rule set automatically identifies and retrieves only the necessary components from cache or the web application, simplifying the management of segmented resources while maintaining improved cache utilization.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Adaptability or versatility

If duplicate resources are stored under different URLs, then resource accessibility is maintained, but cache space is wasted

Engineering Contradiction:
Improveresource accessibilityVSAvoidcache space
Core Design Contradiction:
Adaptability or versatilityVSVolume of stationary object

Solution Approach 1:

The patent implements a canonical URL mechanism where duplicate resources accessed through different URLs are identified and stored once in cache under a canonical identifier. The rule set maps various URL variations to their canonical forms, allowing the cache to serve multiple URL patterns from a single cached resource, thereby maintaining resource accessibility while eliminating duplicate storage.

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

Data Source

PatentUS8386507B2Efficient caching for dynamic webservice queries using cachable fragments
Publication Date: 2013.02.26 R2 SOLUTIONS LLC
  • US8386507B2 patent drawing
  • US8386507B2 patent drawing
  • US8386507B2 patent drawing

AI summary

A method and apparatus for intelligent caching is provided. A thin layer of business logic on a web server receives URL requests sent to the web server from clients and resolves the URLs into URLs corresponding to component parts of the requested document according to the rules of a rule set. Thus only the component resources of a composite document are cached in the web server's caching layer. The rule set defines a format for the requests sent to the web server, the manner in which properly formatted requests should be resolved, and the manner in which the component resources should be assembled into the composite document.