Xline v0.6.1: 一个用于元数据管理的分布式KV存储

Xline是什么?我们为什么要做Xline?

Xline是一个基于Curp协议的,用于管理元数据的分布式KV存储。现有的分布式KV存储大多采用Raft共识协议,需要两次RTT才能完成一次请求。当部署在单个数据中心时,节点之间的延迟较低,因此不会对性能产生大的影响。

但是,当跨数据中心部署时,节点之间的延迟可能是几十或几百毫秒,此时 Raft 协议将成为性能瓶颈。Curp 协议就是为了解决这个问题而设计的。它可以在命令不冲突的情况下减少一个RTT,从而提高性能。因此,Xline旨在实现高性能的数据访问和跨数据中心场景下的强一致性。

V0.6.1版本有什么新功能?

v0.6.1新版本修复问题以及重构如下:

修复问题

  • 修正了在成员变更过程中,更新节点地址可能会导致panic的错误。issue #531
  • 修复 CI 过程中,因 ReadState 导致的 panic。issue #527
  • 修正了旧版本中的一个已知问题:在执行 "添加成员 "后立即关闭群集会导致领导者无法正常关闭。issue #526
  • 修正了 TXN 的冲突检测过程会忽略子请求的 key 的问题。issue #470
  • 修正了在 watch 中因关闭通道而导致的panic问题。issue #370
  • pr 576:fix: fix ce event tx logs
  • pr 556:[Fix]: kv update channel panic
  • 变更 ClusterVersion 的计算方式,避免 ClusterVersion 出现回绕。pr #590
  • 修复了压缩操作在某些特定情况下会导致 panic 的 bug。pr #570

️ 重构

  • 重构了 Curp 客户端的实现,降低了代码复杂度:
  • pr 582: Refactor/curp client tests suits
  • pr 584: Refactor/curp client retry
  • pr 585: Refactor/replace curp client
  • 重构 Xline 和 xline-client, 移除一些冗余的数据结构。pr #469

社区会议

为了更全面地向大家介绍Xline的进展,同时促进Xline社区的发展,我们将于2024年1月27日北京时间上午10:00召开Xline社区会议

欢迎您届时登陆zoom观看直播:

会议号: 874 4309 5241

密码: 124294

会议链接

https://zoom.us/j/87443095241?pwd=r3uJhJ9cb0caovHRsi1ay2pFuhBA1Q.1

相关链接

· Curp相关论文:

https://www.usenix.org/system/files/nsdi19-park.pdf

· Curp相关文章

https://medium.com/@datenlord/curp-revisit-the-consensus-protocol-384464be1600

往期推荐

1.Xline v0.6.0: 一个用于元数据管理的分布式KV存储

2.Xline command 去重机制(一)—— RIFL 介绍

3. Xline 源码解读(四)—— CURP 状态机引擎

Xline于2023年6月加入CNCF 沙箱计划,是一个用于元数据管理的分布式KV存储。Xline项目以Rust语言写就。感谢每一位参与的社区伙伴对Xline的帮助和支持,也欢迎更多使用者和开发者参与体验和使用Xline。

GitHub链接:

https://github.com/xline-kv/Xline

Xline官网:www.xline.cloud

Xline Discord: 

https://discord.gg/XyFXGpSfvb

最近更新

  1. TCP协议是安全的吗?

    2024-01-20 07:24:05       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-01-20 07:24:05       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-01-20 07:24:05       19 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-01-20 07:24:05       20 阅读

热门阅读

  1. 【话题】自然语言处理的发展

    2024-01-20 07:24:05       31 阅读
  2. 【数据库原理】(33)数据库实施阶段

    2024-01-20 07:24:05       32 阅读
  3. Android 13.0 Recent列表不显示某个app

    2024-01-20 07:24:05       27 阅读
  4. Wargames与bash知识21

    2024-01-20 07:24:05       27 阅读
  5. Godot FileDialog无法访问其它盘符的文件

    2024-01-20 07:24:05       36 阅读
  6. Unity文字游戏开发日志(2)——存档与读档

    2024-01-20 07:24:05       33 阅读
  7. UI -- UniApp

    2024-01-20 07:24:05       30 阅读