3个版本
0.0.3 | 2022年9月9日 |
---|---|
0.0.2 | 2022年9月9日 |
0.0.1 | 2022年9月9日 |
在数据库接口中排名第1888
每月下载量154
17KB
328 行
redlock-async-rs - 使用Redis的异步分布式锁
这是基于Redis的分布式锁机制的Redlock实现。
它是基于现有redlock-rs的分支,在其之上构建了异步。
构建
cargo build --release
使用方法
use redlock::RedLock;
#[tokio::main]
fn main() {
let rl = RedLock::new(vec!["redis://127.0.0.1:6380/", "redis://127.0.0.1:6381/", "redis://127.0.0.1:6382/"]);
let lock;
loop {
match rl.lock("mutex".as_bytes(), 1000).await {
Ok(l) => { lock = l; break }
Err(_) => ()
}
}
// Critical section
rl.unlock(&lock).await;
}
测试
使用以下命令运行测试
cargo test
使用以下命令运行示例应用程序
cargo run --release
贡献
如果您发现错误或想以其他方式提供帮助,请提交问题。
许可证
BSD。见LICENSE。
依赖关系
约10–25MB
约347K SLoC