雪花 ID 生成与解析

Twitter Snowflake 算法 ID 在线生成与反向解析,支持自定义 Worker/Datacenter ID 和 Epoch

Workspace

Snowflake ID 实验室

雪花算法 (Snowflake) 是 Twitter 开源的分布式 ID 生成算法。它能生成 64 位整数 ID,由时间戳、机器 ID 和序列号组成,保证全局唯一且按时间有序递增。

ID 生成器

Twitter 标准

Twitter Epoch: 2010-11-04 09:42:54

1

ID 解析器

Binary Structure (64-bit)
Unused (1)
Time (41)
DC (5)
Worker (5)
Seq (12)
Field
Value
时间 (Time)
-
Datacenter
-
Worker
-
Sequence
-

工具介绍

Snowflake ID (雪花算法) 是 Twitter 开源的分布式唯一 ID 生成算法。它能够生成全局唯一、按时间递增的 64 位整数 ID (Long),在分布式系统中广泛使用。

算法结构 (64-bit)

标准的 Snowflake ID 结构如下 (共 64 位):

  • 1 位符号位:始终为 0,保证 ID 为正数。

  • 41 位时间戳:记录毫秒级时间差 (当前时间 - 起始 Epoch)。可以使用约 69 年。

  • 10 位机器码:分为 5 位数据中心 ID (DatacenterId) 和 5 位工作机器 ID (WorkerId)。支持部署 1024 个节点。

  • 12 位序列号:毫秒内的计数序列号。每毫秒支持生成 4096 个 ID。


功能特点

  • 批量生成:支持自定义机器码、数据中心 ID 和起始时间 (Epoch),批量生成符合标准的 ID。

  • 反向解析:输入任意雪花 ID,工具会自动解析出其隐含的生成时间机器码序列号

  • 二进制可视化:提供直观的 64 位二进制色块视图,帮助开发者理解 ID 的内部位结构。


使用场景

  • 数据库主键生成 (替代自增 ID)

  • 分布式系统消息 ID

  • 订单号生成

讨论 0

登录 后参与讨论

暂无评论,成为第一个分享观点的人吧。