SOFAJRaft v1.3.2 发布,蚂蚁金服生产级高性能 Java 实现

电子说

1.2w人已加入

描述

SOFAJRaft v1.3.2 发布了,本期发布内容

Features

抽象出网络通信层,增加 GRPC 实现并支持 Replication Pipeline,用户亦可自行对通信层进行其他实现的扩展 #433

RheaKV 增加 reverseScan API #422

提供 Replicator 与 RPC 的线程池隔离,避免相互影响

read-index 线性一致读请求提供请求超时(timeout)配置 #465

Bug Fixes

移除对 bolt address parser 的扩展,避免 check connection 返回结果不符合预期

SPI 组件 JRaftServiceLoader 改为延迟加载策略规避多余对象的创建

几个 corner case 修复,比如 replicate logs 如果比 appliedIndex(follower)更小,那么可以认为是成功的,更多见 #462

关闭Recyclers 时的 IndexOutOfBoundsException 问题修复 #463

Breaking Changes

SOFAJRaft 简介

SOFAJRaft 是一个基于 RAFT 一致性算法的生产级高性能 Java 实现,支持 MULTI-RAFT-GROUP,适用于高负载低延迟的场景。 使用 SOFAJRaft 你可以专注于自己的业务领域,由 SOFAJRaft 负责处理所有与 RAFT 相关的技术难题,并且 SOFAJRaft 非常易于使用,你可以通过几个示例在很短的时间内掌握它。

功能特性

Leader 选举

日志复制和恢复

快照和日志压缩

集群线上配置变更,增加节点、删除节点、替换节点等

主动变更 Leader,用于重启维护,Leader 负载平衡等

对称网络分区容忍性

非对称网络分区容忍性

容错性,少数派故障,不影响系统整体可用性

多数派故障时手动恢复集群可用

高效的线性一致读,ReadIndex/LeaseRead

流水线复制

内置了基于 Metrics 类库的性能指标统计,有丰富的性能统计指标

通过了 Jepsen 一致性验证测试

JRaft 中包含了一个嵌入式的分布式 KV 实现

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分