6个版本 (重大更新)
0.6.0 | 2022年3月14日 |
---|---|
0.5.0 | 2021年1月25日 |
0.4.0 | 2020年12月30日 |
0.3.0 | 2020年11月2日 |
0.1.0 | 2020年8月10日 |
在 数据结构 中排名第455
每月下载量11,220次
在 5 个 crate 中使用 (4 直接)
13KB
114 行
snowflake-rs
Rust版本的 Twitter snowflake 算法
。
用于快速生成分布式ID的crate。
API文档:https://docs.rs/rs-snowflake
使用方法
将此添加到您的Cargo.toml中
[dependencies]
rs-snowflake = "*"
入门
use snowflake::SnowflakeIdGenerator;
fn main() {
let mut id_generator_generator = SnowflakeIdGenerator::new(1, 1);
let id = id_generator_generator.real_time_generate();
}
use snowflake::SnowflakeIdBucket;
fn main() {
let mut id_generator_bucket = SnowflakeIdBucket::new(1, 1);
let id = id_generator_bucket.get_id();
}
test bench_generate_get_id_by_bucket ... bench: 5 ns/iter (+/- 0)
test bench_generate_get_id_by_generator_general_version ... bench: 232 ns/iter (+/- 32)
test bench_generate_get_id_by_generator_lazy_version ... bench: 2 ns/iter (+/- 0)
test bench_generate_get_id_by_generator_real_time_version ... bench: 249 ns/iter (+/- 22)
test bench_generate_ids_by_bucket ... bench: 13,077 ns/iter (+/- 1,263)
许可证
许可协议
- MIT许可证 (LICENSE-MIT 或 http://opensource.org/licenses/MIT)
贡献
非常感谢大家对项目的贡献,如果有什么我可以帮忙的,我非常乐意帮助!