Incremental Cache Lookup for Proxy Server Scalability

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional proxy servers face scalability and performance issues when concurrently servicing numerous requests for large data items, leading to memory and network congestion, especially during denial of service attacks.

Innovation Solution

Implementing a method where proxy servers retrieve and write cached objects in portions rather than as entire objects, coordinating retrieval and writing with client communication to manage local resources effectively.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If proxy servers retrieve entire cached objects at once, then retrieval speed is improved, but memory consumption increases

Engineering Contradiction:
Improveretrieval speedVSAvoidmemory consumption
Core Design Contradiction:
SpeedVSQuantity of substance

Solution Approach 1:

The patent divides large cached objects into smaller segments or portions. Instead of retrieving entire objects at once, the proxy server retrieves and transmits objects in incremental portions to clients. This segmentation reduces the peak memory consumption during cache operations while maintaining efficient data transfer through structured incremental delivery.

Inventive Principle:
Principle #1Segmentation

2Productivity

If proxy servers service numerous concurrent requests, then system capacity is improved, but network congestion worsens

Engineering Contradiction:
Improvesystem capacityVSAvoidnetwork congestion
Core Design Contradiction:
ProductivityVSObject-generated harmful factors

Solution Approach 1:

The patent segments large objects into smaller portions that can be transmitted incrementally to multiple clients. This allows the proxy server to handle numerous concurrent requests more effectively by distributing object portions across multiple network transmissions rather than attempting to serve entire large objects simultaneously, thereby reducing network congestion while maintaining high system capacity.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The incremental retrieval mechanism enables periodic transmission of object portions to clients. Instead of single large transmissions that cause network bursts and congestion, the system uses periodic incremental deliveries of object segments, smoothing network traffic patterns and reducing congestion while supporting high concurrent request volumes.

Inventive Principle:
Principle #19Periodic action

3Productivity

If proxy servers service numerous concurrent requests for large objects, then request handling capability is improved, but local resource overload worsens

Engineering Contradiction:
Improverequest handling capabilityVSAvoidlocal resource overload
Core Design Contradiction:
ProductivityVSObject-affected harmful factors

Solution Approach 1:

The patent applies segmentation to divide large cached objects into smaller manageable portions. This allows the proxy server to service numerous concurrent requests for large objects by delivering content in incremental portions, reducing the peak memory and computational resources required at any single moment while maintaining high request handling capability.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system implements partial action by retrieving and transmitting only the necessary portions of cached objects to clients rather than entire objects. This partial retrieval approach reduces local resource consumption during cache operations while still satisfying client requests effectively, enabling the system to handle more concurrent requests without resource overload.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS10057368B1Method and system for incremental cache lookup and insertion
Publication Date: 2018.08.21 GOOGLE LLC
  • US10057368B1 patent drawing
  • US10057368B1 patent drawing
  • US10057368B1 patent drawing

AI summary

Methods, systems, and articles of manufacture for caching are disclosed. These include incrementally reading a cache by, receiving a request from a client to retrieve an object from a cache; comparing a size of the requested object to a threshold retrieval size; transmitting a response including an incremental lookup indicator to the client when the size is greater than the threshold retrieval size; receiving one or more follow-on requests including the incremental lookup indicator from the client; responsive to each of the follow-on requests, retrieving a portion of the requested object from the cache; and transmitting the retrieved portion to the client. Corresponding incremental insertion of data items into the cache are also disclosed.