竹简文档
雪花算法

GeneSnowflakeUtil

基因雪花 ID 工具类,支持业务基因嵌入、解析与校验

GeneSnowflakeUtil

GeneSnowflakeUtil 位于 com.xlf.utility.utility
它基于标准雪花 ID 重组位布局,嵌入 8 位业务基因(CRC8),让 ID 自带业务语义。

位结构

[1-bit sign][41-bit timestamp][4-bit machine][8-bit gene][3-bit datacenter][8-bit sequence]

说明:机器位与数据中心位、序列位是从标准雪花结构压缩后得到,吞吐量相较标准模式更低(同毫秒最多 256)。

方法概览

生成方法

字段

类型

解析方法

字段

类型

基因与校验方法

字段

类型

使用示例

Example.java
import com.xlf.utility.utility.GeneSnowflakeUtil;

long userId = GeneSnowflakeUtil.generateId("user");
long orderId = GeneSnowflakeUtil.generateId("order");

int userGene = GeneSnowflakeUtil.parseGene(userId);
boolean ok = GeneSnowflakeUtil.verifyGene(orderId, "order");

注意事项

  • CRC8 基因位存在碰撞概率,不能替代严格业务字段。
  • 适合做“快速路由/粗粒度分类”,不适合做强一致主业务键判定。
  • 基因模式吞吐上限低于标准雪花(序列号仅 8 位)。

下一步

On this page