前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >短网址原理及实现

短网址原理及实现

作者头像
earthchen
发布2020-09-24 11:37:55
9090
发布2020-09-24 11:37:55
举报
文章被收录于专栏:earthchen的专栏earthchen的专栏

短网址原理及实现

原理

首先,系统把一个长的地址,用一个算法转换成一个短码(或者系统生成一个唯一的id号),然后系统将这个短码和url的映射关系存储到数据库或者缓存中

当用户访问生成的短网址的时候,系统从数据库或者缓存中查询到的对应的长url地址,

请求通过http 301(或者302)跳转到对应的长url

301 是永久重定向,302 是临时重定向。短地址一经生成就不会变化,所以用 301 是符合 http 语义的。同时对服务器压力也会有一定减少。 但是如果使用了301,我们就无法统计到短地址被点击的次数了。而这个点击次数是一个非常有意思的大数据分析数据源。能够分析出的东西非常非常多。所以选择302虽然会增加服务器压力,但是我想是一个更好的选择。

生成算法

对长url的转换算法可以自定义,主要目的就是将长字符串变短,并且要求算法不可逆

简单来讲md5都可以,其他复杂或者更优算法都可以自行实现

但是推荐使用分布式自增算法,系统生成一个id,将这个id与长url对应存储

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2018-11-28,,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 短网址原理及实现
    • 原理
      • 生成算法
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档