Intelligent Caching for Query String Redundancy

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Content Delivery Networks (CDNs) face inefficiencies in caching due to the treatment of query strings, leading to redundant caching of similar content responses, which wastes resources and can result in inconsistent user experiences when query strings are not properly handled.

Innovation Solution

An intelligent caching system that consolidates name-value pairs in query strings by determining which pairs affect the content response, using a custom response header from the content server to dynamically build a list of relevant pairs, thereby generating cache keys that ignore irrelevant pairs and reduce redundant caching.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If the cache proxy uses the complete URL including query string as the cache key, then each unique query string is treated as a separate cached object, but this results in redundant caching of identical content responses and wastes cache resources

Engineering Contradiction:
Improvecache key uniquenessVSAvoidcache objects
Core Design Contradiction:
Measurement precisionVSQuantity of substance

Solution Approach 1:

The patent extracts and removes the query string from the URL to create the cache key. By separating the query string component from the base URL, the system caches content based on the base URL only, allowing multiple requests with different query strings to the same base URL to share the same cached content, thereby eliminating redundant cache objects

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

Instead of using the complete URL with query string as the cache key (traditional approach), the patent inverts the approach by using only the base URL without the query string as the cache key. This inversion allows the cache to recognize that different query strings pointing to the same base URL should result in the same cached content

Inventive Principle:
Principle #13The other way round (Inversion)

2Quantity of substance

If the cache proxy ignores the query string completely, then cache resources are saved, but users may receive inconsistent responses for the same request depending on which cache proxy responds

Engineering Contradiction:
Improvecache objectsVSAvoidresponse consistency
Core Design Contradiction:
Quantity of substanceVSReliability

Solution Approach 1:

The patent introduces a mediator mechanism that communicates with the origin server to determine whether the response content actually depends on the query string parameters. The server provides guidance information indicating whether caching without query strings is safe, allowing cache proxies to make informed decisions about which requests can be cached independently of query strings, thus maintaining response consistency

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The system implements feedback by having the origin server provide information about whether its responses are affected by query string parameters. This feedback loop allows cache proxies to adjust their caching behavior dynamically, caching requests without query strings only when the server confirms that the response content is independent of query parameters, thereby ensuring response consistency

Inventive Principle:
Principle #23Feedback

3Measurement precision

If manual configuration is used to determine which query string parameters affect content, then caching accuracy can be improved, but additional workflow coordination between content owner and cache proxy owner is required

Engineering Contradiction:
Improvecaching accuracyVSAvoidworkflow coordination
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent enables the origin server to automatically provide information about which query string parameters affect its responses. Instead of requiring manual configuration and coordination between content owners and cache proxy operators, the system allows the server to self-describe its caching requirements through the feedback mechanism, eliminating the need for manual workflow coordination while maintaining high caching accuracy

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS9514243B2Intelligent caching for requests with query strings
Publication Date: 2016.12.06 MICROSOFT TECHNOLOGY LICENSING LLC
  • US9514243B2 patent drawing
  • US9514243B2 patent drawing
  • US9514243B2 patent drawing

AI summary

An intelligent caching system is described herein that intelligently consolidates the name-value pairs in content requests containing query strings so that only substantially non-redundant responses are cached, thereby saving cache proxy resources. The intelligent caching system determines which name-value pairs in the query string can affect the redundancy of the content response and which name-value pairs can be ignored. The intelligent caching system organically builds the list of relevant name-value pairs by relying on a custom response header or other indication from the content server. Thus, the intelligent caching system results in fewer requests to the content server as well as fewer objects in the cache.