[−][src]Crate buruma
buruma 是一个使用纯 Rust 编写的 ZooKeeper 异步客户端,基本实现了 Java 版官方 客户端的功能
引入依赖
[dependencies.buruma]
version = "*"
基本操作
buruma 支持 low-level 的基本接口以及更高级的 high-level 的高级接口和一些在分布式环境下的工具在 recipe 模块下
简单示例
extern crate buruma; use buruma::ZooKeeper; use buruma::ZKResult; use std::time::Duration; use buruma::CreateMode; use buruma::ACL; #[tokio::main] async fn main() -> ZKResult<()> { let mut zk = ZooKeeper::new("127.0.0.1:2181", Duration::from_secs(5)).await.unwrap(); let basic_path = "/buruma"; // 创建节点 let path = zk .create(basic_path, Some("buruma".as_bytes()), ACL::world_acl(), CreateMode::Persistent) .await .unwrap(); // 查询节点 let result = zk.get(basic_path, None).await.unwrap(); // 设置节点数据 let stat = zk.set(basic_path, "kaixinbaba".as_bytes()).await.unwrap(); // 删除节点 zk.delete(basic_path); Ok(()) }
Structs
ACL | ZooKeeper 权限对象 |
Stat | ZK 节点统计数据 |
WatchedEvent | ZooKeeper 回调通知对象 |
ZKError | |
ZooKeeper | 整个模块的 API 入口对象 |
Enums
AddWatchMode | |
CreateMode | 创建的节点类型 |
EventType | 回调的事件类型 |
KeeperState | 服务端的状态 |
Scheme | ZK 内置的 3 种 scheme 第 4 种 Super 其实就是特殊的 Digest |
States |
Traits
Watcher | 事件回调 trait,实现该 trait 即可自定义处理 ZooKeeper 回调通知 |
Type Definitions
ZKResult |