Design a CDN for Global Design Asset Delivery
Last updated: April 5, 2025
Quick Overview
Design a content delivery network optimized for serving design assets (images, fonts, templates, videos) to 260M+ users worldwide with low latency and high availability.
Canva
April 5, 20259
5
2,156 solved
Design a content delivery network optimized for serving design assets (images, fonts, templates, videos) to 260M+ users worldwide with low latency and high availability.
Canva serves over 260 million monthly active users globally who need fast access to design assets including images, fonts, templates, and increasingly video content. Designing an efficient CDN is critical to user experience, especially in regions far from Canva's Australian headquarters.
What the Interviewer Expects
- Design a multi-tier CDN architecture with edge, regional, and origin layers
- Handle different asset types with appropriate caching and delivery strategies
- Implement cache invalidation and consistency for mutable assets
- Optimize for global reach including regions with poor connectivity
- Discuss cost optimization and traffic engineering
Key Topics to Cover
How to Approach This
- Start by clarifying functional and non-functional requirements with the interviewer.
- Estimate the scale: QPS, storage, bandwidth. This drives your design decisions.
- Draw a high-level architecture first, then deep dive into 1-2 critical components.
- Discuss trade-offs explicitly (e.g., consistency vs availability, SQL vs NoSQL).
- Address failure scenarios, monitoring, and how the system handles 10x traffic spikes.
Possible Follow-up Questions
- How would you handle cache stampedes when a popular template is updated?
- How would you optimize delivery for users in regions with high latency to your origin?
- How would you measure and improve cache hit rates across different asset types?
Sharpen Your Skills on Codemia
Practice similar problems with our interactive workspace, get AI feedback, and track your progress.
Practice System Design ProblemsSample Answer
Requirements
Functional Requirements
- Asset Delivery: Serve images, fonts, templates, and videos with low latency to 260M+ users.
- Cache Invalidation: Implement cache invalidation strategies for mu...
Capacity Estimation
Back-of-Envelope Calculations
- User Base: 260M monthly active users, approx. 8.67M daily active users (assuming 1/30 usage).
- Asset Requests: Assuming an average user requests 5 assets p...