TomoLink
CompaniesPhonePeSystem DesignDesign URL Shortener
System Design
MediumStorage & Routing

Design URL Shortener

45 minshashingdatabasescaching
45 mins
1 sections
hashing, databases

Requirements Clarification

Functional Requirements

  • Given a URL, our service should generate a shorter and unique alias of it.
  • When users access a short link, our service should redirect them to the original link.
  • Users should optionally be able to pick a custom short link for their URL.
  • Links will expire after a standard default timespan.

Non-Functional Requirements

  • The system should be highly available.
  • URL redirection should happen in real-time with minimal latency.
  • Shortened links should not be guessable (not predictable).

Extended Requirements

  • Analytics (e.g., how many times a redirection happened)
  • Our service should also be accessible through REST APIs by other services.
Design URL Shortener [Medium] | PhonePe System_design | TomoLink