Skip to Content

雪花算法

雪花算法是 Twitter 开源的一种分布式ID生成算法,他生成的是一个64位的长整型数字。

ID 示例:1736671043468034048

雪花ID结构

  • 符号位: 始终为0表示正数
  • 时间戳: 可以使用约69年 (2^41 / (1000 * 60 * 60 * 24 * 365))
  • 机器ID: 最多支持1024个节点 (2^10)
  • 序列号: 表示在同一毫秒内,同一台机器可以生成4096个不同的ID (2^12)

ID生成效率高(单点最高400W个/秒)、占用存储少、趋势递增有利于建立索引

依赖机器时钟、依赖中心化服务(用于分配和管理机器ID)

分布式工作时序

最后更新于