diff --git a/README.md b/README.md index 291967ccca573159b249eeaceece205d9cb1a578..134ee18f9ab010cd7c7f242810b4d4bf2bb8a403 100644 --- a/README.md +++ b/README.md @@ -119,12 +119,21 @@ WorkerIdBitLength = 6 SeqBitLength = 6 ``` -## 💎 关于ID +## 💎 ID组成 -本算法生成的 ID ,是一串整数,最多8字节。 + * 雪花算法的ID由3部分组成: + * +-------------------------+------------+---------+ + * | 1.相对基础时间的时间差 | 2.WorkerId | 3.自增数 | + * +-------------------------+------------+---------+ + * +-------------------------+--- 6 bits --+- 6 bits -+ + * + * 第1部分,时间差,是生成ID时的系统时间减去 BaseTime 的总时间差(毫秒单位)。 + * 第2部分,WorkerId,是区分不同机器或不同应用的唯一ID,最大值由 WorkerIdBitLength(默认6)限定。 + * 第3部分,自增数,是每毫秒下的自增数,由参数中的 SeqBitLength(默认6)限定。 -🟣 ID示例(基于默认配置): +## 💎 ID示例 +🟣 本算法生成的 ID ,是一串整数,最多8字节。以下是基于默认配置生成的ID: ``` 129053495681099 (本算法运行1年) 387750301904971 (运行3年) @@ -196,19 +205,6 @@ redis作用 🔎 在集成“自动注册WorkerId”功能时,用于注册 WorkerId ,不用于生产 ID。 -## 💎 ID组成 - - * 雪花算法的ID由3部分组成: - * +-------------------------+------------+---------+ - * | 1.相对基础时间的时间差 | 2.WorkerId | 3.自增数 | - * +-------------------------+------------+---------+ - * +-------------------------+--- 6 bits --+- 6 bits -+ - * - * 第1部分,时间差,是生成ID时的系统时间减去 BaseTime 的总时间差(毫秒单位)。 - * 第2部分,WorkerId,是区分不同机器或不同应用的唯一ID,最大值由 WorkerIdBitLength(默认6)限定。 - * 第3部分,自增数,是每毫秒下的自增数,由参数中的 SeqBitLength(默认6)限定。 - - ## 💎 已实现的语言 | 语言 | github | gitee |