71个版本 (34个重大更改)

0.42.0 2024年7月12日
0.41.0 2024年6月21日
0.34.0 2024年3月27日
0.32.1 2023年10月5日
0.7.2 2022年7月20日

#490 in 数据库接口

Download history 491/week @ 2024-05-03 543/week @ 2024-05-10 227/week @ 2024-05-17 210/week @ 2024-05-24 181/week @ 2024-05-31 387/week @ 2024-06-07 187/week @ 2024-06-14 286/week @ 2024-06-21 319/week @ 2024-06-28 177/week @ 2024-07-05 138/week @ 2024-07-12 67/week @ 2024-07-19 101/week @ 2024-07-26 167/week @ 2024-08-02 93/week @ 2024-08-09 37/week @ 2024-08-16

每月418次下载

Apache-2.0

545KB
7.5K SLoC

logo

project status project stability

Momento Rust客户端库

Momento缓存是一种快速、简单、按使用付费的缓存解决方案,无需像传统缓存解决方案那样任何运营开销。此仓库包含Momento Rust客户端库的源代码。

要开始使用Momento,您需要一个Momento身份验证令牌。您可以从Momento控制台获取一个。

Momento Rust SDK包可在crates.io上找到: momento

您需要安装其他依赖项以充分利用我们的SDK

cargo add momento
cargo add tokio --features full
cargo add futures

注意:您只有在使用Momento主题时才需要安装futures

用法

以下是一个您可以在自己的项目中使用的快速入门示例

use momento::cache::{configurations::Laptop, GetResponse};
use momento::{CacheClient, CredentialProvider, MomentoError};
use std::time::Duration;

const CACHE_NAME: &str = "cache";

#[tokio::main]
pub async fn main() -> Result<(), MomentoError> {
    let cache_client = CacheClient::builder()
        .default_ttl(Duration::from_secs(60))
        .configuration(Laptop::latest())
        .credential_provider(CredentialProvider::from_env_var(
            "MOMENTO_API_KEY".to_string(),
        )?)
        .build()?;

    cache_client.create_cache(CACHE_NAME.to_string()).await?;

    match cache_client.set(CACHE_NAME, "mykey", "myvalue").await {
        Ok(_) => println!("Successfully stored key 'mykey' with value 'myvalue'"),
        Err(e) => println!("Error: {}", e),
    }

    let value: String = match cache_client.get(CACHE_NAME, "mykey").await? {
        GetResponse::Hit { value } => value.try_into().expect("I stored a string!"),
        GetResponse::Miss => {
            println!("Cache miss!");
            return Ok(()); // probably you'll do something else here
        }
    };
    println!("Successfully retrieved value: {}", value);

    Ok(())
}

注意,上述代码需要名为MOMENTO_API_KEY的环境变量,并且必须将其设置为有效的Momento身份验证令牌

入门和文档

文档可在Momento Docs网站上找到。

示例

准备好直接进入吗?请查看示例目录,以获取使用SDK的完整、工作示例。

开发

如果您有兴趣为SDK做出贡献,请参阅CONTRIBUTING文档。


更多信息,请访问我们的网站:https://gomomento.com

依赖项

~19–29MB
~515K SLoC