CDN Cache Servers Offload Processing to Adjunct Devices
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current content distribution networks face challenges in efficiently managing content requests across geographically dispersed servers, leading to increased load on primary servers and delayed content delivery due to the need for replicating content across multiple locations and handling diverse content types like audio and video.
Innovation Solution
Implementing a content distribution network (CDN) with cache servers and adjunct servers that dynamically redirect content requests, utilize HTTP REST interfaces for API calls, and perform operations like transcoding and TTL calculation, offloading processing from primary servers to specialized adjunct servers, and utilizing cloud-based resources for enhanced functionality.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Speed
If content is replicated across multiple geographically dispersed servers, then content delivery speed is improved, but system complexity and resource consumption increase
Solution Approach 1:
The system segments content delivery functionality into separate cache servers that are geographically distributed. Each cache server handles local content requests independently, dividing the overall system into manageable segments that can operate autonomously while contributing to the global content delivery network.
Solution Approach 2:
Origin servers act as intermediaries between cache servers and the ultimate content sources. When cache servers need content, they query origin servers which provide the content. This intermediary layer simplifies the architecture by centralizing content management while distributing delivery functionality.
2Productivity
If primary servers handle all content processing tasks, then system architecture is simple, but server load increases and processing efficiency decreases
Solution Approach 1:
Processing tasks are segmented and distributed to specialized adjunct servers based on their capabilities. Different adjunct servers handle different types of operations such as transcoding, format conversion, and content generation, allowing parallel processing and improving overall system productivity while reducing load on any single server.
Solution Approach 2:
Adjunct servers are designed with multi-functionality to handle various content processing tasks. A single adjunct server can perform multiple operations including transcoding to different formats, generating thumbnails, and other content manipulation tasks, reducing the need for specialized servers for each function.
3Reliability
If cache servers store all content types, then content availability is improved, but storage resource consumption increases
Solution Approach 1:
Cache servers store content in its original format locally to ensure quick access and high availability. The system maintains local copies of content in various formats (video, audio, images) at cache servers, allowing immediate serving of requests without requiring format conversion, thus improving reliability while managing storage efficiently through localized caching strategies.
Data Source
AI summary
A cache server receives content and an instruction indicating an event associated with the content that causes a processor to invoke a call out to an adjunct device. The instruction further indicates an operation that the adjunct device is to perform. The cache server detects the event associated with the content, halts a flow of the content in response to detecting the event associated with the content, passes via the call out the content to the adjunct device to perform the operation, receives from the adjunct device a response and resulting data from the operation, and performs an additional operation on the resulting data based on the response from the adjunct device.


