2 个版本
0.0.2 | 2021 年 12 月 29 日 |
---|---|
0.0.1 | 2021 年 12 月 28 日 |
#2316 in 数据库接口
28KB
664 行
SailDB
SailDB 是一个基于 Canary 和 SRPC 的内存数据库。
SailDB 非常高效,因为通信基于 Canary,而键值存储由 Dashmap 支持。
SailDB 对键和值是通用的,可以在运行时构建,并且设计得尽可能简单易用。
创建 SailDB 数据库非常简单
// bind the global route to this socket
Tcp::bind("127.0.0.1:8080").await?;
// bind a SailDB to the global route with the default id
Sail::<String, String>::bind();
访问数据库应该像这样简单
let addr = "127.0.0.1:8080".parse::<Addr>()?;
let mut db: Sail<String, String> = Sail::new(addr).await?;
let (key, val) = ("hello".to_string(), "world!".to_string());
db.insert(&key, &val).await?;
let val = db.get(&key).await?;
assert!(val, Some("world!".to_string()))
依赖项
~13–23MB
~351K SLoC