Design: Content Delivery Network (CDN) System
Design covers CDN architecture for static content delivery including caching, cache invalidation, and global distribution. Does not cover dynamic content generation or user authentication.
Functional Requirements
FR1: Deliver static content (images, videos, scripts) to users globally with low latency
FR2: Support at least 1 million concurrent users
FR3: Ensure content is cached close to users to reduce origin server load
FR4: Provide cache invalidation to update content when needed
FR5: Handle sudden traffic spikes without downtime
FR6: Support HTTPS for secure content delivery
Non-Functional Requirements
NFR1: 99.9% availability (less than 8.77 hours downtime per year)
NFR2: API response latency p99 under 100ms for cached content
NFR3: Origin server should not be overwhelmed by requests
NFR4: Content freshness must be maintained with cache TTL and invalidation
