分布式ID生成方案詳解:雪花算法 vs 步長ID
一、核心需求
- 全局唯一性:集群中絕不重復
- 有序性:有利于數據庫索引性能
- 高可用:每秒至少生成數萬ID
- 低延遲:生成耗時<1ms
二、雪花算法(Snowflake)
1. 數據結構(64位)
0 | 0000000000 0000000000 0000000000 0000000000 0 | 00000 | 00000 | 000000000000----------------------------------------------------------------------------1位符號位 | 41位時間戳(毫秒級) | 5位數據中心ID | 5位機器ID | 12位序列號
- 時間戳:可使用69年(2^41/1000/3600/24/365)
- 序列號:單機每