コンテンツへスキップ
uencoder

Raft

Raftは、リーダー選出+ログ複製+安全性制約により、Multi-Paxosと同等の一貫性を実現する、理解しやすい合意プロトコルである。

目的

Paxosより理解と実装が容易な合意プロトコルを提供し、現代の分散システムで広く使われる。

メカニズム

ノードの役割はLeader/Follower/Candidateである。Leaderは書き込みを受け付け、ログをFollowerに複製し、過半数の承認後にコミットする。選出はランダム化タイムアウトでライブロックを防ぎ、任期(Term)が古いLeaderを排除する。

ユースケース

  • 分散合意プロトコルの実装
  • リーダー選出プロトコル
  • ログレプリケーション

関連ツール

References