snowflake 64位id 自增算法

在分布式系统中生成一个64位id,并保持id 大致顺序,需求为每秒生成100万的id。

为了满足 分布式系统、顺序、每秒生成100万。算法把 64位id 分为 0位保留,1--12位 为序列号,13--23位为机器id,24--63位为毫秒级时间,64位保留。

分布式用13-23位的机器id 保证,顺序用24--63位的时间保证,序列号1--12位 保证没毫秒内可以并发生成12位的序列号,这样就能保证单台机器每秒可以生成1000x2^12个序列号。这样就能保证在分布式系统中高并发的生成id。

发布了6 篇原创文章 · 获赞 1 · 访问量 2202

猜你喜欢

转载自blog.csdn.net/baidu_17173809/article/details/51668666