美文网首页
分布式全局唯一ID

分布式全局唯一ID

作者: 新强吖 | 来源:发表于2017-06-28 20:15 被阅读180次

在很多中小项目中,我们往往直接使用数据库自增特性来生成主键ID,这样确实比较简单。而在分库分表的环境中,数据分布在不同的分片上,不能再借助数据库自增长特性直接生成,否则会造成不同分片上的数据表主键会重复。简单介绍下使用和了解过的几种ID生成算法。
Twitter的Snowflake(又名“雪花算法”)
UUID/GUID(一般应用程序和数据库均支持)
MongoDB ObjectID(类似UUID的方式)
Ticket Server(数据库生存方式,Flickr采用的就是这种方式)
其中,Twitter 的Snowflake算法是笔者近几年在分布式系统项目中使用最多的,未发现重复或并发的问题。该算法生成的是64位唯一Id(由41位的timestamp+ 10位自定义的机器码+ 13位累加计数器组成)

相关文章

  • 分布式唯一Id(雪花算法),原理+对比+方案

    集群高并发情况下如何保证分布式唯一全局Id生成 为什么需要分布式全局唯一Id,以及分布式Id的业务需求 在复杂分布...

  • 分布式 ID 生成方式

    一、为什么要用分布式ID?1、什么是分布式ID?全局唯一ID就叫分布式ID。 2、那么分布式ID需要满足那些条件?...

  • 就这?分布式 ID 发号器实战

    分布式 ID 需要满足的条件: 全局唯一:这是最基本的要求,必须保证 ID 是全局唯一的。 高性能:低延时,不能因...

  • 就这?分布式 ID 发号器实战

    分布式 ID 需要满足的条件: 全局唯一:这是最基本的要求,必须保证 ID 是全局唯一的。 高性能:低延时,不能因...

  • 04.分布式系统的id生成方式

    分布式ID需要满足那些条件? 全局唯一:必须保证ID是全局性唯一的,基本要求高性能:高可用低延时,ID生成响应要块...

  • UUID

    IdWorker.java 高并发分布式系统中生成全局唯一Id汇总 Twitter的分布式自增ID算法snowf...

  • 全局唯一ID设计

    在分布式系统中,经常需要使用全局唯一ID查找对应的数据。产生这种ID需要保证系统全局唯一,而且要高性能以及占用相对...

  • 如何生成全局唯一id

    为什么需要全局唯一id 在分布式架构下,经常有需求需要生成全局唯一id,比如优惠券等券码,或者分库分表,每个表都用...

  • 高并发下如何生成唯一ID

    通过本文档你将学习到 为什么需要分布式全局唯一ID以及分布式ID的业务需求 ? ID生成规则部分硬性要求?目标出现...

  • 分布式全局唯一ID

    在很多中小项目中,我们往往直接使用数据库自增特性来生成主键ID,这样确实比较简单。而在分库分表的环境中,数据分布在...

网友评论

      本文标题:分布式全局唯一ID

      本文链接:https://www.haomeiwen.com/subject/dpcpcxtx.html