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 数据库接口
每月418次下载
545KB
7.5K SLoC
Momento Rust客户端库
Momento缓存是一种快速、简单、按使用付费的缓存解决方案,无需像传统缓存解决方案那样任何运营开销。此仓库包含Momento Rust客户端库的源代码。
要开始使用Momento,您需要一个Momento身份验证令牌。您可以从Momento控制台获取一个。
- 网站: https://www.gomomento.com/
- Momento文档: https://docs.momentohq.com/
- 入门: https://docs.momentohq.com/getting-started
- Rust SDK文档: https://docs.momentohq.com/sdks/rust
- 讨论: Momento Discord
包
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