Requirements of the system

Our URL shortener system should meet the specific requirements.

The following are functional requirements:

  • Given an URL, our service should generate a shorter and unique alias of it
  • When users access a shorter URL, our service should redirect them to the original link

The following are non-functional requirements:

  • The system should be highly available. This is required because, if our service is down, all the URL redirections will start failing.
  • URL redirection should happen in real-time with minimum latency.
  • Shortened links should not be guessable (or predictable).

The following are extended requirements:

  • Analytics, for example, how many times a redirection happened?
  • Our service should also be accessible through REST APIs by other services

Let's calculate the size of the database and bandwidth required by the system to go live.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
3.139.70.248