关注
如何生成唯一主键
1.利用数据库自增ID,特点是趋势递增,全局唯一,需要保证高可用环境下,使用不同初始值+相同步长,但是扩展性有限制
2.利用单点服务串行化生成递增ID,特点是全局递增,全局唯一,例如存储在redis中,并利用redis原子操作生成,性能瓶颈取决于redis读写性能
3.每台机器自己生成UUID,特点是无序,全局唯一,一般是字符串的数据类型使得检索低效,无序的特性使得插入低效
4.每台主机获取当前的毫秒数,特点是趋势递增,可能出现全局不唯一,不推荐
5.参考snowflake算法,41bit毫秒数+10bit机器序号+12bit毫秒内序列号,特点是趋势递增,全局唯一
根据业务权衡选取2或者5,其次是1,其次是3,最后是4
UUID的缺点
无序,全局唯一,一般是字符串的数据类型使得检索低效,无序的特性使得插入低效
另外附上:
[UUID如何保证唯一性?](https://zhuanlan.zhihu.com/p/70375430)
[UUID是如何保证唯一性的?](https://www.zhihu.com/question/34876910)
查看原帖
点赞 评论
相关推荐
点赞 评论 收藏
分享
11-03 14:26
武汉设计工程学院 运营 点赞 评论 收藏
分享
11-11 21:08
门头沟学院 Java 点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 找工作能把i人逼成什么样 #
4233次浏览 42人参与
# 面试尴尬现场 #
197826次浏览 750人参与
# 百融云创求职进展汇总 #
22012次浏览 144人参与
# 0经验如何找实习? #
14216次浏览 281人参与
# 最难的技术面是哪家公司? #
60012次浏览 937人参与
# 你今年做了几份实习? #
4181次浏览 64人参与
# 腾讯音乐求职进展汇总 #
142950次浏览 1032人参与
# 字节出了豆包coding模型 #
4497次浏览 48人参与
# 你找工作经历过哪些骗局? #
5210次浏览 94人参与
# 实习心态崩了 #
93746次浏览 487人参与
# 你开始找寒假实习了吗? #
7878次浏览 129人参与
# 实习越久越好,还是多多益善? #
10951次浏览 93人参与
# 25年找工作是什么难度? #
7659次浏览 85人参与
# 一上班就想____,这正常吗? #
2620次浏览 58人参与
# 刚工作,应该先搞钱or搞成长? #
4449次浏览 66人参与
# 离职你会和父母说吗? #
5988次浏览 83人参与
# 你投了多少家公司?进展是___ #
183297次浏览 1135人参与
# 如果公司降薪,你会跳槽吗? #
109165次浏览 687人参与
# 实习必须要去大厂吗? #
168036次浏览 1658人参与
# 你是怎么和mt相处的? #
82424次浏览 435人参与
# 你会为了工作牺牲生活吗? #
64988次浏览 446人参与
