1、UUID:
不适合作为主键,因为太长了,并且无序不可读,查询效率低。比较适合用于生成唯一的名字的标示比如文件的名字。
2、数据库自增 id :
两台数据库分别设置不同步长,生成不重复ID的策略来实现高可用。这种方式生成的 id 有序,但是需要独立部署数据库实例,成本高,还会有性能瓶颈。
3、利用 redis 生成 id :
性能比较好,灵活方便,不依赖于数据库。但是,引入了新的组件造成系统更加复杂,可用性降低,编码更加复杂,增加了系统成本。
4、Twitter的snowflake算法 :
Github 地址:https://github.com/twitter-archive/snowflake。文章来源:https://www.toymoban.com/news/detail-860617.html
5、美团的Leaf分布式ID生成系统 :
Leaf 是美团开源的分布式ID生成器,能保证全局唯一性、趋势递增、单调递增、信息安全,里面也提到了几种分布式方案的对比,但也需要依赖关系数据库、Zookeeper等中间件。
美团技术团队文章:https://tech.meituan.com/2017/04/21/mt-leaf.html文章来源地址https://www.toymoban.com/news/detail-860617.html
到了这里,关于分库分表之后主键id解决方案有哪些的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!