4 个版本
0.1.3 | 2022 年 9 月 5 日 |
---|---|
0.1.2 | 2022 年 9 月 3 日 |
0.1.1 | 2022 年 9 月 3 日 |
0.1.0 | 2022 年 9 月 3 日 |
#335 在 数据库实现
18KB
344 行
toboggan
描述
Toboggan 是一个基于 Google 的 tarpc 库和 sled 嵌入式数据库构建的基于 RPC 的键值数据库客户端和服务器系统。这个包包含了使用 Bincode 序列化通过 TCP 的客户端和服务器二进制文件,以及一个库,它包含特性、样板代码、存根和实用工具,以便将您选择的传输和业务逻辑与由该包提供的 RPC 接口和服务器功能集成。
特性
撰写本文时,以下操作被支持,并将很快添加更多。
- NewTree
- Insert
- Get
- GetTreeNames
- GetID (返回一个单调生成的 ID)
- Remove
安装
cargoinstall toboggan
二进制使用
服务器
您可以使用以下命令查看服务器 cli 的帮助文本:cargo run --bin server -- -h
。
示例
命令 cargo run --bin server -- -a 10.0.18.135 -p 5050 -d ./db tcp
将创建/打开位于 /db 的数据库,并在 10.0.18.135:5050 上监听 RPC 请求。
客户端
您可以使用以下命令查看客户端的帮助文本:cargo run --bin client -- -h
。
可以使用 cargo run --bin client -- <subcommand> -h
查看特定子命令的帮助文本。
示例
要将值 "Thor M." 插入到服务器上 "names" 树的 "my_name" 键中,请使用以下命令: cargo run --bin client -- -a 10.0.18.135 -p 5050 insert -k my_name "Thor M." -t names
依赖项
~10–24MB
~277K SLoC