5个版本
0.1.6 | 2021年9月23日 |
---|---|
0.1.5 | 2021年8月4日 |
0.1.4 | 2021年5月13日 |
0.1.3 | 2021年4月26日 |
0.1.2 | 2021年4月26日 |
#450 in 异步
每月46次下载
405KB
9K SLoC
基于actor模型框架构建的异步ScyllaDB驱动程序
关于 ◈ 先决条件 ◈ 入门 ◈ 支持项目 ◈ 加入讨论 ◈ 未来工作 ◈ LICENSE
关于
Scylla.rs 提供了Rust应用程序和分布式Scylla数据库之间的快速和安全互操作性。Scylla.rs 基于IOTA actor框架 backstage 构建,但不需要依赖的应用程序使用此框架。
Scylla.rs 分为两部分
- 应用: 包含简化数据库访问的特质以及管理数据库连接的actor实现。此功能通过
app
功能门控。 - CQL: 包含CQL帧定义以及压缩、哈希和构建帧的实用工具。
注意: 这是一款alpha软件,可能存在性能和稳定性问题。请在我们的 问题跟踪器 中报告任何问题。
先决条件
Scylla.rs 需要通过地址和端口连接到运行中的Scylla实例。有关创建Docker实例的说明,请参阅 此处。
入门
首先,将 scylla 添加到您的 Cargo.toml
文件中。
scylla-rs = "0.1"
接下来,构建Scylla actor。这应该通过将 Scylla
actor 添加到Backstage launcher!
宏来完成
launcher!(builder: AppsBuilder {[] -> Scylla<Sender>: ScyllaBuilder<Sender>}, state: Apps {});
通过调用来启动启动程序
// Create the `Apps` struct by invoking `AppsBuilder::build`
let apps = AppsBuilder::new().build();
// Start the launcher
apps.Scylla()
.await
// The following enables us to immediately add a node to
// the ring using the listen address configured for the
// Scylla actor.
.future(|apps| async {
let ws = format!("ws://{}/", "127.0.0.1:8080");
let nodes = vec![([172, 17, 0, 2], 19042).into()];
add_nodes(&ws, nodes, 1).await.expect("unable to add nodes");
apps
})
.await
.start(None)
.await;
支持项目
如果您想为Scylla做出贡献如果遇到问题,请考虑提交错误报告,功能请求或拉取请求。
在贡献之前请阅读以下内容
加入讨论
如果您想参与社区,需要帮助设置环境,有任何与Chronicle相关的问题,或者只是想与其他人讨论IOTA、分布式注册技术(DRT)和物联网,欢迎加入我们的Discord。
未来工作
- 改进可用性和文档
许可证
(c)2021 - IOTA Stiftung
IOTA Scylla.rs遵循Apache许可证(版本2.0)。
依赖项
~5–18MB
~196K SLoC