短地址介绍 博客分类: 短地址
程序员文章站
2024-03-20 20:39:34
...
短地址(也叫 短网址:Short URL)就是为了让一个很长的网站链接缩短为一个短的链接,因为微博内有字数限制,所以短地址就是为了这个而产生的。大部分微博、手机邮件提醒等地方已经有很多应用模式了,并占据了一定的市场。
算法原理
短地址网站基本都是通过ASP或者PHP转向来实现网址缩短。
算法一
1)将长网址md5生成32位签名串,分为4段, 每段8个字节;
2)对这四段循环处理, 取8个字节, 将他看成16进制串与0x3fffffff(30位1)与操作, 即超过30位的忽略处理;
3)这30位分成6段, 每5位的数字作为字母表的索引取得特定字符, 依次进行获得6位字符串;
4)总的md5串可以获得4个6位串; 取里面的任意一个就可作为这个长url的短url地址;
算法二
a-z,A-Z,0-9,这62位取6位组合,可产生500多亿个组合数量。把数字和字符组合做一定的映射,就可以产生唯一的字符串,如第62个组合就是aaaaa9,第63个组合就是aaaaba,再利用洗牌算法,把原字符串打乱后保存,那么对应位置的组合字符串就会是无序的组合。
把长网址存入数据库,取返回的id,找出对应的字符串,例如返回ID为1,那么对应上面的字符串组合就是bbb,同理 ID为2时,字符串组合为bba,依次类推,直至到达64种组合后才会出现重复的可能,所以如果用上面的62个字符,任意取6个字符组合成字符串的话,你的数据存量达到500多亿后才会出现重复的可能。
推荐阅读
-
短地址介绍 博客分类: 短地址
-
ubuntu改变mac地址方法 博客分类: linux ubuntu mac address ifconfigmac
-
获取java中已经加载类的来源地址 博客分类: Java java类加载来源地址
-
随笔记录有用链接地址 博客分类: 日常积累
-
算法:URL短地址压缩算法-短网址映射。
-
watch-only 地址 博客分类: 区块链比特币
-
利用wireshak确定rtsp访问地址 博客分类: 网络编程 wiresharkurlrtsp地址
-
solr下载地址 博客分类: solr
-
TCP长连接与短连接的区别 博客分类: 网络安全
-
哈希 Open Hashing 和 Closed Hashing 博客分类: 算法 哈希拉链法开地址