48 个版本 (18 个稳定版)

4.0.0-beta.12021年1月29日
3.0.0-beta.22020年3月29日
2.3.3 2020年4月18日
2.3.1 2020年3月26日
0.4.0 2016年12月29日

#713解析器实现

Download history 105/week @ 2024-03-13 76/week @ 2024-03-20 234/week @ 2024-03-27 149/week @ 2024-04-03 80/week @ 2024-04-10 86/week @ 2024-04-17 134/week @ 2024-04-24 73/week @ 2024-05-01 61/week @ 2024-05-08 68/week @ 2024-05-15 94/week @ 2024-05-22 87/week @ 2024-05-29 73/week @ 2024-06-05 75/week @ 2024-06-12 104/week @ 2024-06-19 99/week @ 2024-06-26

每月368次 下载
用于 4 crates

MIT/Apache

350KB
9K SLoC

CDRS crates.io 版本 构建状态 构建状态

CDRS 招募维护者

CDRS - Apache Cassandra driver

CDRS 是用纯 Rust 编写的 Apache Cassandra 驱动。

💡需要异步版本?

功能

  • TCP/SSL 连接;
  • 负载均衡;
  • 连接池;
  • LZ4、Snappy 压缩;
  • Cassandra 到 Rust 的数据反序列化;
  • 可插拔的身份验证策略;
  • ScyllaDB 支持;
  • 监听服务器事件;
  • 支持多个 CQL 版本(3、4),完全符合规范实现;
  • 查询跟踪信息。

文档和示例

入门指南

将 CDRS 添加到您的 Cargo.toml 文件作为依赖项

cdrs = { version = "2" }

然后将其添加到您的 main.rs 中的外部 crate

extern crate cdrs;

use cdrs::authenticators::NoneAuthenticator;
use cdrs::cluster::session::{new as new_session};
use cdrs::cluster::{ClusterTcpConfig, NodeTcpConfigBuilder};
use cdrs::load_balancing::RoundRobin;
use cdrs::query::*;

fn main() {
  let node = NodeTcpConfigBuilder::new("127.0.0.1:9042", NoneAuthenticator {}).build();
  let cluster_config = ClusterTcpConfig(vec![node]);
  let no_compression =
    new_session(&cluster_config, RoundRobin::new()).expect("session should be created");

  let create_ks: &'static str = "CREATE KEYSPACE IF NOT EXISTS test_ks WITH REPLICATION = { \
                                 'class' : 'SimpleStrategy', 'replication_factor' : 1 };";
  no_compression.query(create_ks).expect("Keyspace create error");
}

此示例配置了一个由单个节点组成的集群,并使用轮询负载均衡和默认的 r2d2 连接池值。

许可协议

此项目受以下任一许可协议的许可:

根据您的选择。

依赖项

~3–12MB
~147K SLoC