短链系统的实现

简单的代码在:https://github.com/jiajunhuang/links

其中主要的就是,通过 https://github.com/jiajunhuang/links/blob/master/codes.go#L9 EncodeMapDecodeMap 完成字母和数字之间的互相映射。

此外的关键点就是利用数据库的主键,或者redis的INCR得到一个全局唯一的,自增的id。然后 根据id,把10进制转换成62进制,然后表示成字母。


微信公众号
关注公众号,获得及时更新

更多文章
  • 2017年必装的VIM插件推荐
  • TCP/IP简明教程 - 从零构建TCP/IP协议(二)连接,断开与拥塞控制
  • TCP/IP简明教程 - 从零构建TCP/IP协议(这次叫PCT协议)
  • Lua Manual 阅读笔记
  • Golang Map 源码阅读与分析
  • MySQL 零碎知识 - MySQL必知必会
  • Golang slice 源码阅读与分析
  • 经典好书推荐(2017)
  • Golang log库 源码阅读与分析
  • 毕业后一年
  • ansible 简明教程
  • 自己写个搜索引擎
  • HTTP 路由的两种常见设计形式
  • Golang的short variable declaration
  • Greenlet和Stackless Python