2 个不稳定版本
0.2.0 | 2023年11月22日 |
---|---|
0.1.0 | 2023年10月18日 |
2249 在 算法
每月下载量 30
415KB
8K SLoC
Mephisto
Mephisto 实现了 Raft 协议,其扩展版本的 Raft 论文可在 此处 获取。该论文介绍了 Raft 并用以下话阐述了其动机:
Raft 是一种用于管理复制日志的共识算法。它产生的结果等同于 (多-)Paxos,其效率与 Paxos 相当,但其结构不同于 Paxos;这使得 Raft 比 Paxos 更易于理解,同时也为构建实用系统提供了更好的基础。
许可证
本项目在 Apache 许可证 2.0 版 下发布。
原始源代码在相同的许可证下分发,但版权所有者不同
etcd-io/raft
的作者是The etcd Authors
。tikv/raft-rs
的作者是TiKV 项目作者
。
为了简化许可证的传达,除非明确指出,否则所有在引导提交之后的提交都是独立进行的。
引导提交包括以下修改
- 将
slog
替换为tracing
。 - 将
datadriven
替换为goldenfiles
。 - 将
rust-protobuf
和protobuf-build
替换为prost
。 - 将
raft-proto
合并到mephisto
包中。 - 提供 Raft 存储的占位符实现。
致谢
本项目源于 tikv/raft-rs
。 raft-rs
递归地源于 etcd-io/raft
。
依赖
~1.4–7.5MB
~143K SLoC