1.

How do you design a URL shortening service like TinyURL or bit.ly?

Answer»

TinyURL or bit.ly takes a long URL and generates a NEW unique short URL. These SYSTEMS are also capable of taking the shortened URL and returning the original full URL.

  • What are some of the Required Features?
    • Generate a short URL having a LENGTH SHORTER than the original URL.
    • Store the original URL and map it to the shortened one.
    • Allow redirects in the shortened URLs.
    • Support custom names for short URLs.
    • Handle multiple requests at the same time.
  • What are some of the Common Problems encountered?
    • What if two users input the same custom URL?
    • What happens if there are more user load than expected?
    • How do you regulate the database storage space?
  • Possible tips for consideration:
    • The concept of hashing can be used for linking original and new URLs.
    • REST API can be used for balancing high traffic and handling front-end communication.
    • Multithreading concept for handling multiple requests at the same time.
    • NoSQL databases for STORING original URLs.


Discussion

No Comment Found