关于QQ号的分发管理机制的基本方案的设计猜想和分析讨论

本文讨论了QQ号码的分发管理机制,包括号码字段的存储设计、号码生成策略以及回收机制。分析了自增ID、UUID、预先生成等方案的优缺点,并提出了利用分布式锁和数据库连接池来保证唯一性的思路。还引入了标记删除和冻结状态的概念,以实现号码的有效回收和再分配。
摘要由CSDN通过智能技术生成

关于QQ号的分发管理机制的基本方案的设计猜想和分析讨论

众所周知,QQ号最开始是5位,后来逐渐变为11位,我开始用QQ的时候,一般都是申请到10位,有时候能申请到9位,据说还有传闻“同学的同学”、“朋友的表哥”这些人申请到7位号码,那时候中小学生,去到网吧都会注册几次,看能否申请到短号。言归正传,这也六七年过去了,QQ的用户数量不断增加,受到微信冲击之前,增长速度应该也是在上升,能停留在11位,一个不可忽略的因素就是号码回收机制。QQ的管理系统会自动回收不活跃帐号。具体来说,新注册的号码,一周内不登陆就会被冻结,登陆了几次之后,这个周期会变长一些,随着级别的增高,被冻结的可能性也会阶段性地降低。

我今天脑海里突然想到这个问题:QQ号码的数据库(表)要怎么设计?

 

对于这个问题,我在网上搜了一下。已有的回答或讨论,无外乎这几种:

  • 号码字段自增
  • 使用UUID
  • 预先生成

对于第一种(号码字段自增),方案确实可行,反对的意见只有“不想用这种方式”,但是用什么类型存储,可以表示多大的范围,没有人细致分析,也没有考虑提及。

使用UUID,能够保证分表、分库的唯一标识,但是位数太多(32位),且字母数字大小写混合,无法记忆,更别说作为QQ号码了,没有考虑实际应用场景。

预先生成的方案,后生成的号码,可能与先前生成的号码有重复,这样一来,随着已分发的号码数的增多,后期生成的号码中,可用的越来越少,分发的成功率越来越低。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值