URL shortening service

Use Casesapp

1, shortening : take a URL => return a much shorter URLui

2, redirection : take a short URL => redirect to the original URLrem

3, custom URL : http://goo.gl/Trump2016requests

4, High availabilityhash

 

5, Analytics : it

6, Automatic link removalio

7, Manual link removal : e.g. porngraphytable

8, UI vs. API, see http://goo.glservice

 

Constraints:request

make some guess about the volume

1, new URLs per month : 100 million   => because twitter daily tweets: 

2, request per month : 1 billion => 

3, 10% for shortening and 90% for redirection

4, Requests per second : 400+ (40 : shortens, 360 : redirects)

5, 500 bytes per URL

6, 6 bytes per hash

 

Abstract Design:

 1, Application service layer - services the requests

  * shortening service

  * redirection service

 2, Data storage layer - keeps track of the hash<->URL mapping

  * Acts like a big hash table

 

Bottlenecks:

1, traffic - how much, estimation, probably not the problem

2, data volume - quickly look up and insertion

3, how to split (scale)

相關文章
相關標籤/搜索