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 次

MIT 许可证

93KB
1.5K SLoC

克比特

Cargo Documentation Rust 1.40+ GitHub Build Clippy codecov

为在 Rust 中处理轻量级 持久化数据通道 的组件。通道可用于通信、事务日志记录、应用程序状态的实时复制或作为软件系统镜像的后端。

基本概念

持久化数据通道

  • 一种机制,可以以非常快的速度顺序持久化数据
  • 它们是 写入器绑定 的 - 由写入器创建并指定通道的特定结构,例如大小、最大记录长度或超时
  • 它们具有固定的预定义容量。
  • 一旦通道关闭、填满或被遗弃,它将永远不会再次用于写入。
  • 它们是字节导向的接收器。
  • 它们由文件支持;使用 RAM 磁盘进行存储,如 tempfs 或 /dev/shm,可以提供惊人的速度。
  • 它们始终使用小端字节序。

写入器和读取器

  • 写入器是向持久化通道推送数据的组件。对于每个通道,只有一个写入器。
  • 写入操作可以通过处理器的链来分阶段完成。
  • 读取器是从通道中轮询数据的组件。通道中的可用数据可以被多个读取器多次、顺序或并行地消费。
  • 读取器和写入器的默认实现都是非阻塞的。
  • 读取器还提供了一个直接的 Iterator API。

用法

将此添加到您的 Cargo.toml

[dependencies]
kekbit = "0.3.4"

有关详细用法,请参阅 示例

兼容性

支持的最小 Rust 版本是 1.31。任何对此的更改都被视为破坏性更改。

许可证

根据 MIT 许可证授权 (LICENSEhttp://opensource.org/licenses/MIT)

贡献

除非您明确说明,否则您提交的任何有意包含在工作中的贡献,均应按上述方式授权,无需任何附加条款或条件。

依赖关系

~0.6–6MB
~15K SLoC