11 个版本
0.3.5 | 2022年2月18日 |
---|---|
0.3.4 | 2021年5月10日 |
0.3.3 | 2020年3月25日 |
0.3.0 | 2020年2月24日 |
0.1.1 | 2020年2月11日 |
#13 in #数据通道
每月下载 26 次
93KB
1.5K SLoC
克比特
为在 Rust 中处理轻量级 持久化数据通道 的组件。通道可用于通信、事务日志记录、应用程序状态的实时复制或作为软件系统镜像的后端。
基本概念
持久化数据通道
- 一种机制,可以以非常快的速度顺序持久化数据
- 它们是 写入器绑定 的 - 由写入器创建并指定通道的特定结构,例如大小、最大记录长度或超时
- 它们具有固定的预定义容量。
- 一旦通道关闭、填满或被遗弃,它将永远不会再次用于写入。
- 它们是字节导向的接收器。
- 它们由文件支持;使用 RAM 磁盘进行存储,如 tempfs 或 /dev/shm,可以提供惊人的速度。
- 它们始终使用小端字节序。
写入器和读取器
- 写入器是向持久化通道推送数据的组件。对于每个通道,只有一个写入器。
- 写入操作可以通过处理器的链来分阶段完成。
- 读取器是从通道中轮询数据的组件。通道中的可用数据可以被多个读取器多次、顺序或并行地消费。
- 读取器和写入器的默认实现都是非阻塞的。
- 读取器还提供了一个直接的
Iterator
API。
用法
将此添加到您的 Cargo.toml
[dependencies]
kekbit = "0.3.4"
有关详细用法,请参阅 示例。
兼容性
支持的最小 Rust 版本是 1.31。任何对此的更改都被视为破坏性更改。
许可证
根据 MIT 许可证授权 (LICENSE 或 http://opensource.org/licenses/MIT)
贡献
除非您明确说明,否则您提交的任何有意包含在工作中的贡献,均应按上述方式授权,无需任何附加条款或条件。
依赖关系
~0.6–6MB
~15K SLoC