头图

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供您参考:

相关链接

往期推荐

1. DatenLord | Xline Geo-distributed KV Storage

  1. 精彩回顾 l Rust唠嗑室:Xline跨数据中心一致性管理

图片

达坦科技(DatenLord)专注下一代云计算——“天空计算”的基础设施技术,致力于拓宽云计算的边界。达坦科技打造的新一代开源跨云存储平台DatenLord,通过软硬件深度融合的方式打通云云壁垒,实现无限制跨云存储、跨云联通,建立海量异地、异构数据的统一存储访问机制,为云上应用提供高性能安全存储支持。以满足不同行业客户对海量数据跨云、跨数据中心高性能访问的需求。

公众号:达坦科技DatenLord

知乎账号:达坦科技DatenLord

B站:https://space.bilibili.com/2017027518


Datenlord
14 声望6 粉丝

DatenLord专注打造新一代云原生高性能存储平台,实现跨云、跨数据中心之间数据高速访问,从而极大提升存储系统的可扩展性,满足企业客户海量数据跨地域高速访问需求,在互联网、金融、电信、能源等不同行业均有广...