Raft (algorithm): Difference between revisions

Content deleted Content added
External links: Added a link to an illustrated walkthrough of the Raft algorithm that I found helpful to understanding it.
Added minimal infobox and image of Raft mascot.
Line 1:
{{short description|Consensus algorthim}}
 
{{Infobox algorithm
|class = [[Consensus algorithm]]
|image = Raft Consensus Algorithm Mascot on transparent background.svg|thumb|
|imagesize = thumb
|caption = The Raft consensus algorithm mascot.
}}
 
'''Raft''' is a [[Consensus (computer science)|consensus]] algorithm designed as an alternative to the [[Paxos (computer science)|Paxos]] family of algorithms. It was meant to be more understandable than Paxos by means of separation of logic, but it is also formally proven safe and offers some additional features.<ref name="paper"/> Raft offers a generic way to distribute a [[Finite-state machine|state machine]] across a [[Computer cluster|cluster]] of computing systems, ensuring that each node in the cluster agrees upon the same series of state transitions. It has a number of open-source reference implementations, with full-specification implementations in [[Go (programming language)|Go]], [[C++]], [[Java (programming language)|Java]], and [[Scala (programming language)|Scala]].<ref name="website" /> It is named after Reliable, Replicated, Redundant, And Fault-Tolerant.<ref>[https://groups.google.com/forum/#!topic/raft-dev/95rZqptGpmU Why the "Raft" name?]</ref>