Distributed Fragment Caching for Dynamic Content Coherency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current caching techniques struggle to efficiently manage dynamic content in e-commerce websites, leading to high server loads and increased costs due to the explosive growth in user requests, while maintaining cache coherency and reducing latency across distributed networks.

Innovation Solution

A distributed fragment caching methodology that uses a FRAGMENT header and cache ID rules within HTTP protocols to cache dynamic content fragments, allowing for efficient caching and co-location of fragment assembly throughout the network, reducing processing loads and achieving improved response times.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If dynamic content is generated for each user request, then user-specific customization is improved, but server load and processing time increase exponentially

Engineering Contradiction:
Improveuser-specific customizationVSAvoidserver processing capacity
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The patent segments Web pages into reusable fragments that can be independently cached and assembled. Instead of generating entire customized pages for each user request, the system divides content into modular fragments (header, navigation, product listings, footer) that can be cached separately and recombined, reducing server processing load while maintaining user-specific customization.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements preliminary action by pre-generating and caching fragments for different user roles (e.g., customer, administrator, vendor) before actual user requests arrive. When a user requests a page, the system assembles pre-cached role-specific fragments rather than generating content in real-time, significantly improving server response capacity.

Inventive Principle:
Principle #10Preliminary action

2Productivity

If caching is implemented for dynamic content, then server load is reduced, but cache coherency and freshness become difficult to maintain

Engineering Contradiction:
Improveserver load reductionVSAvoidcache coherency
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent implements feedback mechanisms where the system monitors changes in underlying data (e.g., product inventory, pricing, user profiles) and automatically invalidates or updates cached fragments when data changes occur. This ensures cache coherency is maintained while still benefiting from cached content, resolving the contradiction between load reduction and reliability.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The patent makes the caching system dynamic by allowing cache validity periods to vary based on content type and update frequency. Frequently changing content (e.g., stock levels) has shorter cache durations, while stable content (e.g., site navigation) has longer cache durations, maintaining coherency while maximizing caching benefits.

Inventive Principle:
Principle #15Dynamics

3Speed

If fragments are cached at multiple distributed locations, then response time is improved, but network complexity and coordination overhead increase

Engineering Contradiction:
Improvecontent delivery speedVSAvoiddistributed cache coordination
Core Design Contradiction:
SpeedVSDevice complexity

Solution Approach 1:

The patent introduces an intermediary fragment cache management system that coordinates between distributed caches and origin servers. This intermediary layer handles fragment assembly, validation, and distribution, simplifying the complexity of coordinating multiple distributed caches while improving content delivery speed through localized cache access.

Inventive Principle:
Principle #24Intermediary (Mediator)

4Adaptability or versatility

If role-specific fragments are cached, then user experience is improved, but memory usage and cache size requirements increase

Engineering Contradiction:
Improverole-specific content deliveryVSAvoidcache memory consumption
Core Design Contradiction:
Adaptability or versatilityVSQuantity of substance

Solution Approach 1:

The patent applies local quality by caching different fragments at different cache locations based on their access patterns and size. Frequently accessed, small fragments (e.g., navigation menus) are cached at edge locations closer to users, while larger, less frequently changed fragments (e.g., product catalogs) are cached at origin servers, optimizing memory usage across the distributed system.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS7587515B2Method and system for restrictive caching of user-specific fragments limited to a fragment cache closest to a user
Publication Date: 2009.09.08 DROPBOX INC
  • US7587515B2 patent drawing
  • US7587515B2 patent drawing
  • US7587515B2 patent drawing

AI summary

A method, a system, an apparatus, and a computer program product are presented for a fragment caching methodology. Within the request path from a client to a server, a first computing device may attach to a request message a message header that indicates that the first computing device supports fragment processing; a second computing device within the request path processes this request message. When the second computing device receives a response message corresponding to the request message, it can check for a message header directive that indicates that it should cache the response message's fragment only if the response path does not have at least one computing device that supports the processing of fragments; if so, then it forwards the response message without caching its contained fragment.