共计 1582 个字符,预计需要花费 4 分钟才能阅读完成。
Xline 是什么?咱们为什么要做 Xline?
Xline 是一个基于 Curp 协定的,用于治理元数据的分布式 KV 存储。 现有的分布式 KV 存储大多采纳 Raft 共识协定,须要两次 RTT 能力实现一次申请。当部署在单个数据中心时,节点之间的提早较低,因而不会对性能产生大的影响。
然而,当跨数据中心部署时,节点之间的提早可能是几十或几百毫秒,此时 Raft 协定将成为性能瓶颈。Curp 协定就是为了解决这个问题而设计的。它能够在命令不抵触的状况下缩小一个 RTT,从而进步性能。因而,Xline 旨在实现高性能的数据拜访和跨数据中心场景下的强一致性。
V0.4.0 版本有什么新性能?
基于此前 v0.3.0 中对于“建设在内存根底上的性能测试是否具备说服力”的质疑,咱们在 v0.4.0 中对于 Xline 从新进行了基准测试。新版本特点、修复问题以及基准测试如下:
特点:
- 通过引入批处理机制进步网络带宽利用率;
- 为 CURP 共识协定实现快照性能;
- 实现快照相干 API,且与 etcdctl 兼容。其余 etcdctl 保护中的 API 会在将来实现。
修复 bug:
- 修改了在某些并发状况下命令会不按程序执行的问题(问题 #197),在 pr#195 中解决。
- 修改在基准测试过程中 gc 工作会 panic 的问题(问题 #206),在 pr#210 中解决。
- 修改在某些状况下锁性能工作不失常的问题(问题 #209),在 pr#212 中解决。
- 修改一些并发的投放申请会失去谬误订正的问题(问题 #209),在 pr#238 中解决。
基准测试:
因为咱们在 v0.3.0 中为 Xline 实现了持久性性能,咱们在这个版本中对 Xline 从新进行了测试。基准测试报告能够在咱们的 README 文件中的 Performance Comparison 局部查看。
欢送参加到 Xline 我的项目中
咱们欢送任何对于 Xline 的踊跃奉献。目前在 GitHub 上有些工作并不需要深刻理解 Curp 协定或 Xline 这个我的项目,只须要理解 API 和 Rust 语言即可。即便您现处于入门阶段,并想要在开源我的项目中应用 Rust 语言,社区也会提供领导和帮忙,来疏导您更好地参加我的项目。目前 Xline 提供如下两个 first-good issue 供您参考:
- pr 256(https://github.com/datenlord/Xline/issues/256)
- pr 219(https://github.com/datenlord/Xline/issues/219)
Xline 的建设须要每一位对此感兴趣且违心付出的你们的参加,咱们期待你们的退出。
相干链接
- GitHub: https://github.com/datenlord/Xline
- Curp 相干论文:https://www.usenix.org/system/files/nsdi19-park.pdf
- Curp 相干文章: https://medium.com/@datenlord/curp-revisit-the-consensus-prot…
- Xline 官网:www.xline.cloud
往期举荐
1. DatenLord | Xline Geo-distributed KV Storage
- 精彩回顾 l Rust 唠嗑室:Xline 跨数据中心一致性治理
达坦科技(DatenLord)专一下一代云计算——“天空计算”的基础设施技术,致力于拓宽云计算的边界。达坦科技打造的新一代开源跨云存储平台 DatenLord,通过软硬件深度交融的形式买通云云壁垒,实现无限度跨云存储、跨云联通,建设海量异地、异构数据的对立存储拜访机制,为云上利用提供高性能平安存储反对。以满足不同行业客户对海量数据跨云、跨数据中心高性能拜访的需要。
公众号:达坦科技 DatenLord
知乎账号:达坦科技 DatenLord
B 站:https://space.bilibili.com/2017027518