SOFAJRaft v1.3.3 发布了,本期发布内容
-
Features
-
RheaKV 允许不同分片各自配置不同的 learner 节点 #486
-
在只有一个成员变更的情况下,仍然使用 raft 联合一致性算法 #482
-
替换基于 GPL-2.0 licence 的 Bits.java #474
#477
-
升级 jackson.databind 版本到 2.10.4 已修复安全漏洞 #470
-
Bug Fixes
-
修复在 node panic 后可能因为未及时刷盘导致快照元数据丢失的 bug #480
#481
-
Breaking Changes
-
致谢(排名不分先后)
此版本强烈建议升级
SOFAJRaft 简介
SOFAJRaft 是一个基于 RAFT
一致性算法的生产级高性能 Java 实现,支持 MULTI-RAFT-GROUP,适用于高负载低延迟的场景。 使用 SOFAJRaft 你可以专注于自己的业务领域,由 SOFAJRaft 负责处理所有与 RAFT 相关的技术难题,并且 SOFAJRaft 非常易于使用,你可以通过几个示例在很短的时间内掌握它。
功能特性
- Leader 选举
- 日志复制和恢复
- 快照和日志压缩
- 集群线上配置变更,增加节点、删除节点、替换节点等
- 主动变更 Leader,用于重启维护,Leader 负载平衡等
- 对称网络分区容忍性
- 非对称网络分区容忍性
- 容错性,少数派故障,不影响系统整体可用性
- 多数派故障时手动恢复集群可用
- 高效的线性一致读,ReadIndex/LeaseRead
- 流水线复制
-
内置了基于 Metrics
类库的性能指标统计,有丰富的性能统计指标
-
通过了 Jepsen
一致性验证测试
- JRaft 中包含了一个嵌入式的分布式 KV 实现
原文
https://www.oschina.net/news/117087/sofajraft-1-3-3-released