2021-03-25:如何把长url转换为短url?

2021-03-25:如何把长url转换为短url?

福大大 答案2021-03-25:

1.长url和短url一一映射。想采用某种算法,把长url和短url做一一映射。后来发现,这种方法是行不通的。如果行得通,那么压缩算法就是一片新天地了。失败方法。
2.用哈希。这种方法无法还原url,依然需要保存数据库。另一个问题就是碰撞,虽然几率低。失败方法。
3.老老实实存数据库。id从1开始,顺序递增。为了保证保证短url的随机性,可以找一个函数f(x),需要保证x和f(x)是一一映射,这样当x递增时,f(x)不至于重复。另外十进制表示数字数量太少,可以采用比特币的base58编码的58个字符,也就是58进制。映射算法可参考如下网址:
2020-04-19:1到100万以内,如何打印99万个不重复的随机数?

跳转原理 :当我们生成短链接之后,只需要在表中(数据库或者NoSql )存储原始链接与短链接的映射关系即可。当我们访问短链接时,只需要从映射关系中找到原始链接,即可跳转到原始链接。


urlshorter
评论

posted @   福大大架构师每日一题  阅读(110)  评论(0编辑  收藏  举报
编辑推荐:
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· AI 智能体引爆开源社区「GitHub 热点速览」
· Manus的开源复刻OpenManus初探
· 写一个简单的SQL生成工具
点击右上角即可分享
微信分享提示