作者热门文章
- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
PBFT 表示,如果备份 i 的计时器在 View v 中到期,那么它会通过多播 <view-change, v+1, n, C, P, i>
启动 v+1 的 View 更改。其中 n 是最后一个稳定检查点 s 的序列号,P 是一个集合,其中包含一个集合 Pm,用于每个在 i 准备的请求 m,其序列号高于 n。
现在,检查点是定期进行的,因此可以在 i 处准备好序列号高于 n 的消息,这些消息已经提交。我们不希望将这些包含在 Pm 中,因为它们已经提交。那么,PBFT 如何处理呢?
最佳答案
我认为那些消息被再次执行了。当发生 View 更改时,所有节点都将处于同一检查点。
当 View v + 1
的"new"主 收到2⨍
有效 View 更改消息,多播一个新 View 消息。在发送的消息中,它指示:
min-s
。max-s
。每个节点保存不在检查点内的消息的日志,因此它们不需要再次处理。
关于algorithm - PBFT View 更改 : What happens to committed operations after the valid snapshot?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45025899/
我是一名优秀的程序员,十分优秀!