[发明专利]一种短链接生成方法和装置在审
| 申请号: | 201911082462.1 | 申请日: | 2019-11-07 |
| 公开(公告)号: | CN112784183A | 公开(公告)日: | 2021-05-11 |
| 发明(设计)人: | 王建波;李山林;王金川 | 申请(专利权)人: | 北京京东尚科信息技术有限公司;北京京东世纪贸易有限公司 |
| 主分类号: | G06F16/955 | 分类号: | G06F16/955;G06F7/58;G06F21/60;G06F16/27 |
| 代理公司: | 中原信达知识产权代理有限责任公司 11219 | 代理人: | 王安娜;陈继越 |
| 地址: | 100086 *** | 国省代码: | 北京;11 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 链接 生成 方法 装置 | ||
本发明公开了一种短链接生成方法和装置,涉及计算机技术领域。该方法的一具体实施方式包括:接收短链接生成请求;其中,所述短链接生成请求包括长链接;获取号码范围以及当前已分配的号码信息,结合预定号码分配方式,得到分配至所述短链接生成请求的号码;确定与所述号码相应的号码牌,结合所述长链接中的协议和域名,生成与所述长链接相应的短链接。该实施方式采取单机存储维护待分配的号码,通过集群随机分配实现单机发号,进而实现伪随机放号生成短链接,整体既避免了短链接碰撞的情况,也解决了短链接字符连续的问题。
技术领域
本发明涉及计算机技术领域,尤其涉及一种短链接生成方法和装置。
背景技术
短网址服务,简单来说就是把一个很长的URL地址(Uniform Resource Locator,统一资源定位符)转化为相对简短的地址而且仍然可以正常使用,让用户可以更容易的分享链接,避免折行或者超字符限制。
现有生成短链接的方法主要分为两种:
1)消息摘要算法MD5(Message Digest Algorithm MD5,消息摘要算法第五版):将长链接生成32位签名串并分为4段,每段1个字节(即8位),再通过16进制转换补位获得字母表索引,进而生成6位短链接;
2)利用顺序映射,即相对简单的按照字母数字,顺序生成,类似于aaaaaa这种方式。
在实现本发明的过程中,发明人发现现有技术至少存在如下问题:
1)对于MD5算法所得6位短链接来讲,任意大小写字母数字组合就有560亿多,当短链接的数量超过10亿,即表示生成56个链接,至少就会有一个重复的产生,造成访问错误;
2)随着短链接数量的增长,其碰撞概率也不断加大。当出现碰撞情况,需要重新生成短链接,并重新判断所生成的短链接是否已存在,额外增加了系统的运行负担,甚至导致系统阻塞;
3)对于顺序映射来讲,用户可能两次所得短链接字符是连续的,这对于用户来讲并不友好;且用户可以根据当前所得到的短链接字符,很容易猜测到短链接生成服务的流量,例如aaaaaa~aaaaad,服务的流量就是1秒里有4个人调用;
4)大多数程序都带有地址还原,即直接可以通过短链接还原到真实网址。因此现有技术一般都会维护短链接-长链接以及长链接-短链接的索引,造成资源的巨大浪费。
发明内容
有鉴于此,本发明实施例提供一种短链接生成方法和装置,至少能够解决现有技术中短链接碰撞概率较高、维护长短链接索引资源较为浪费的问题。
为实现上述目的,根据本发明实施例的一个方面,提供了一种短链接生成方法,包括:
接收短链接生成请求;其中,所述短链接生成请求包括长链接;
获取号码范围以及当前已分配的号码信息,结合预定号码分配方式,得到分配至所述短链接生成请求的号码;
确定与所述号码相应的号码牌,结合所述长链接中的协议和域名,生成与所述长链接相应的短链接。
可选的,在所述接收短链接生成请求之后,还包括:
确定所述短链接生成请求的编号,分配所述短链接生成请求至与所述编号相应的放号装置中。
可选的,在所述接收短链接生成请求之前,还包括:
根据预定周期,将放号装置所包含的号码范围以及当前已分配的号码信息存储至目标存储中;和/或
若检测到所述放号装置关闭、且未达到所述预定周期,则将所述放号装置所包含的号码范围以及当前已分配的号码信息存储至所述目标存储中;
所述获取号码范围以及当前已分配的号码信息,包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京京东尚科信息技术有限公司;北京京东世纪贸易有限公司,未经北京京东尚科信息技术有限公司;北京京东世纪贸易有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911082462.1/2.html,转载请声明来源钻瓜专利网。





