短链系统的实现

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

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

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


更多文章
  • 自动升级Docker容器
  • 再读《程序员修炼之道-从小工到专家》
  • 让浏览器下载文件
  • 再读《软件随想录》/《黑客与画家》/《软技能》
  • HTTP 压力测试中的 Coordinated Omission
  • 2的补码
  • 编程语言中的 context 是什么?
  • flutter macOS 构建出错
  • Flatpak 使用小记
  • Golang CAS 操作是怎么实现的
  • PostgreSQL 当MQ来使用
  • Clash 结合 工作VPN 的网络设计
  • 使用 PostgreSQL 搭建 JuiceFS
  • PostgreSQL 配置优化和日志分析
  • 有GitHub Copilot?那就可以搭建你的ChatGPT4服务