A Content Delivery Network (CDN) is a distributed network of servers that delivers web content (like images, videos, or scripts) to users based on their geographic location.
Web applications serve users globally, and fetching assets from a single origin server can be slow due to distance and congestion. CDNs reduce latency and load times by serving content from nearby edge locations.
Use a CDN when your application serves static or media-heavy content to users across different regions.
You need to know
Edge servers cache content closer to users: CDNs store copies of static content in multiple locations worldwide, reducing the time it takes to load a page.
Reduces load on origin servers: Since edge nodes handle most of the requests for static assets, your origin servers can focus on dynamic content or critical tasks.
Improves availability and DDoS protection: Many CDNs absorb traffic spikes and malicious requests, acting as a buffer to protect your infrastructure.
Popular technologies
Cloudflare - Offers CDN plus security features like DDoS protection and WAF.
Amazon CloudFront - AWS’s CDN, tightly integrated with other AWS services.
Akamai - One of the oldest and most widely used CDNs with strong global reach.
Like posts like this?
Every week, you'll get a new system design concept, broken down like this one.
Free subscribers also get a little bonus:
🎁 The System Design Interview Preparation Cheat Sheet
If you're into visuals, paid subscribers unlock:
→ My Excalidraw system design template – so you have somewhere to start
→ My Excalidraw component library – used in the diagram of this issue
No pressure though. Your support helps me keep writing, and I appreciate it more than you know ❤️