5 个版本

0.1.4 2022 年 8 月 3 日
0.1.3 2022 年 8 月 1 日
0.1.2 2022 年 7 月 31 日
0.1.1 2022 年 7 月 25 日
0.1.0 2022 年 7 月 24 日

#2751数据库接口

MIT 许可证

12KB
311

storage-trait

一个简单的 k-v 对存储特质,包括 dashmap 和 redis 的实现。

通过 cargo 使用此 crate

[dependencies]
storage-trait = "0.1.4"

支持 Dashmap

您可以使用以下方法构建一个实现存储特质的 dashmap 存储对象

use storage_trait::{DashMapStorageBuilder, Storage};

fn set_get() {
    let storage = DashMapStorageBuilder::new().build();
    let _ = storage
        .set("name".to_string(), "Ferris".to_string())
        .unwrap();
    let resp = storage.get("name".to_string()).unwrap();
    println!("resp: {:?}", resp);
}

输出

resp: Some("Ferris")

Redis 支持(单节点)

构建 Redis 存储对象

use storage_trait::{RedisStorageBuilder, Storage};

fn set_contains() {
    let storage = RedisStorageBuilder::new()
        .addr("redis://127.0.0.1:6379")
        .build();
    let _ = storage
        .set("name".to_string(), "Ferris".to_string())
        .unwrap();
    let resp = storage.contains("name".to_string()).unwrap();
    println!("resp: {:?}", resp);
}

输出

resp: true

依赖关系

~4–10MB
~121K SLoC