2 个版本

使用旧的 Rust 2015

0.2.1 2015 年 4 月 9 日
0.2.0 2014 年 11 月 22 日

#2247数据库接口

BSD-3-Clause

15KB
281

redlock-rs - 使用 Redis 的分布式锁

这是基于 Redis 的分布式锁机制 Redlock 的实现。它大致是 Ruby 版本的移植。

它包含了一个示例应用程序在 main.rs 中。

构建

cargo build --release

用法

use redlock::RedLock;

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) {
      Some(l) => { lock = l; break }
      None => ()
    }
  }

  // Critical section

  rl.unlock(&lock);
}

测试

使用以下命令运行测试

cargo test

使用以下命令运行示例应用程序

cargo run --release

贡献

如果你发现错误或想以其他方式提供帮助,请 提交一个 issue

许可

BSD。请参阅 LICENSE

依赖

~6MB
~109K SLoC