zoukankan      html  css  js  c++  java
  • URL shortening service

    Use Cases

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

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

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

    4, High availability

    5, Analytics : 

    6, Automatic link removal

    7, Manual link removal : e.g. porngraphy

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

    Constraints:

    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)

  • 相关阅读:
    学习笔记16:残差网络
    学习笔记15:第二种加载数据的方法
    学习笔记14:模型保存
    学习笔记13:微调模型
    学习笔记12:图像数据增强及学习速率衰减
    蚯蚓
    [JSOI] 重要的城市
    正则表达式
    加分二叉树
    选择客栈
  • 原文地址:https://www.cnblogs.com/qsort/p/5931491.html
Copyright © 2011-2022 走看看