20 Star 89 Fork 47

SOFAStack / sofa-jraft

 / 详情

[SoC] Heartbeat optimization in multi raft group

Backlog
Opened this issue  
2020-05-25 10:43

Introduction

SOFAJRaft is a production-level, high-performance Java implementation based on the RAFT consistency algorithm that supports MULTI-RAFT-GROUP for high-load, low-latency scenarios. With SOFAJRaft you can focus on your business area. SOFAJRaft handles all RAFT-related technical challenges. SOFAJRaft is very user-friendly, which provides several examples, making it easy to understand and use.

Target

In multi raft group service, there are many nodes in same server process that may be all leaders, then the heartbeat to their followers will consume CPU and network. For example, we can share the heartbeat timer and merge heartbeat requests to the same follower server at once between these leaders to reduce the system consumpiton, of course, you can provide more optimization solutions.

简介

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

目标

在 multi raft group 场景中,可能有多个 raft node 在同一个进程中并且很多都是 leader,当他们各自向自己的 followers 发送心跳时会过多的消耗 CPU 和网络 IO。例如我们可以在同一个进程内共享心跳计时器并将这些 leaders 发往同一台机器的心跳请求合并起来发送出去,以此来减少系统消耗,当然你还可以提供更多的优化方案。

Comments (0)

潘潘 created任务
潘潘 set related repository to SOFAStack/sofa-jraft
Expand operation logs

Sign in to comment

Status
Assignees
Milestones
Pull Requests
Successfully merging a pull request will close this issue.
Branches
Planed to start   -   Planed to end
-
Top level
Priority
参与者(1)
Java
1
https://git.oschina.net/sofastack/sofa-jraft.git
git@git.oschina.net:sofastack/sofa-jraft.git
sofastack
sofa-jraft
sofa-jraft

Search