短网址原理及实现

短网址原理及实现

原理

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

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

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

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

生成算法

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

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

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

如果对短链接感兴趣,可以加QQ444-9156方便交流


如何开通会员?

如何开通会员?

短网址生成器:新媒体营销必备

新媒体营销必备