2 个不稳定版本

0.2.0 2024年3月7日
0.1.0 2024年3月7日

#6 in #technology

Apache-2.0 协议

7KB
91 代码行,不包括注释

Crates.io Version Crates.io License Foundry Industries

Superflake 是一种受 Snowflake ID 启发的超安全标识技术。

特性

  • 简单。 精简且美观的唯一标识。
  • 可定制。 您可以自定义默认纪元和节点 ID。
  • 健壮。 Superflake 是在 Rust 语言中构建的,这是世界上最受欢迎的编程语言。
  • 性能。 Superflake ID 只有 8 个字节长,它是一个数字,就像雪花一样。

结构

Superflake 通过连接以下内容生成:

  • 一个 42 位的时间戳,
  • 一个 10 位的节点 ID,和
  • 一个 12 位的增量数字。

使用方法

use superflake::Superflake;

let mut superflake = 
    Superflake::new_with_node_id(1023, None); // Specify a custom epoch if you want

let id = superflake.gen(); // 392366571697205248

// Decode the Superflake
let decoded_id = superflake.decode(id); 

无运行时依赖