System Design
Mid-Level
system_design
Design a URL Shortener Service
URL shorteners are widely used for concisely hiding long URLs to make links easily shareable. Your task is to design a URL shortener service like bit.ly. Consider the requirements of URL storage, generating short keys, managing redirection, handling collisions, and providing analytics. Describe the major components, databases, and technologies you would use to implement this service at scale.
Functionality Requirements: 1. Shorten a URL 2. Redirect to the original URL 3. Track statistics (clicks, etc.)
Non-Functional Requirements: 1. High availability 2. Low latency 3. Secure access
Considerations: Scalability and performance in handling high volume traffic.
Functionality Requirements: 1. Shorten a URL 2. Redirect to the original URL 3. Track statistics (clicks, etc.)
Non-Functional Requirements: 1. High availability 2. Low latency 3. Secure access
Considerations: Scalability and performance in handling high volume traffic.
Suggested Answer