Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

MultiRAFT 静默模式的疑问 #47

Closed
yongs207 opened this issue Jul 9, 2018 · 6 comments
Closed

MultiRAFT 静默模式的疑问 #47

yongs207 opened this issue Jul 9, 2018 · 6 comments

Comments

@yongs207
Copy link

yongs207 commented Jul 9, 2018

静默模式
RAFT的Leader向Follower的心跳间隔一般都较小,在100ms粒度,当复制实例数较多的时候,心跳包的数量就呈指数增长。通常复制组不需要频繁的切换Leader,我们可以将主动Leader Election的功能关闭,这样就不需要维护Leader Lease的心跳了。复制组依靠业务Master进行被动触发Leader Election,这个可以只在Leader节点宕机时触发,整体的心跳数就从复制实例数降为节点数。社区还有一种解决方法是MultiRAFT,将复制组之间的心跳合并到节点之间的心跳。

这里的主动Leader Election的功能关闭是指使用reset_election_timeout_ms将超时时间变长吗?如果是会有什么负面影响?
Master进行被动触发Leader Election这里是指重新设置选主超时时间开始选主操作吗?
Leader节点宕机触发,是符合感知Leader节点宕机的呢?通过业务Master吗?这里的业务Master是需要在每个节点上都有有一个leader吗?如果是业务Master的leader出现漂移怎么处理?

@ipconfigme
Copy link
Collaborator

这个静默模式后来没有做

@yongs207
Copy link
Author

根据百度的介绍,现在也是使用MultiRAFT,那么当前的实现方式是怎样的?

@ipconfigme
Copy link
Collaborator

ipconfigme commented Jul 12, 2018

这个multi-raft有些不同的解释,cockroachdb那个是上面说的心跳合并,这个braft当前没有实现,后续会考虑实现;业界也有一些multi-raft理解是一个程序支持多个raft复制组,这个braft是支持的。

@yongs207
Copy link
Author

这里的主要疑问在braft支持一个程序支持多个raft复制组,当时如果不进行心跳合并的处理下,当raft复制组比较多时,会不会存在性能问题?

@xuefengchang
Copy link
Contributor

关于一个braft程序支持多个raft复制组,这个有文档或者例子可以参考吗 @ipconfigme

@GOGOYAO
Copy link

GOGOYAO commented Oct 22, 2020

这个multi-raft有些不同的解释,cockroachdb那个是上面说的心跳合并,这个braft当前没有实现,后续会考虑实现;业界也有一些multi-raft理解是一个程序支持多个raft复制组,这个braft是支持的。

心跳合并目前有计划么

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants