qrCode生成二维码太密集

url参数太多,qrCode生成二维码太密集,使用pako压缩url还是太密,有什么其他的解决办法

阅读 15.8k
3 个回答

尝试一下短连接
生成二维码的时候一般使用low级别的就可以了。

可以自己设计一个短链接生成功能,首先选择一个非常短的域名,例如st18. org这种类似域名,然后在redis维护一个整数计数器(这里一定要持久化和做好高可用备份),整数计数器从0开始,每增加一个短链接就增加1,然后往一个redis的hash数据结构里面存放一个计数器到原始链接的键值对,短链接类似st18.org/1。可能会遇到如下问题:
第一,计数器越来越大,达到几百亿,可以考虑使用几种手段来缩短长度,使用redis的0到15号数据库作为计数器前缀,正好是一个十六进制,计数器也使用1024个计数器,使用62进制(0-9a-zA-Z)编码0到1023,对应的hash数据结构类似,最后在输出时也使用52进制即可。有条件的同学甚至可以使用redis cluster多实例增加一个前缀,到时位数一定要明确,比如一位62进制数,这些前缀的位数一定要明确,方便对短链接的hash进行寻址。
第二,并发高是计数器出现问题,可以使用redis事务机制来避免。

请问楼主问题解决了吗?

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题