Raft

Raft是一種用於替代Paxos的共識算法 。 相比於Paxos ， Raft的目標是提供更清晰的邏輯分工使得算法本身能被更好地理解 ， 同時它安全性更高 ， 並能提供一些額外的特性 。 Raft能爲在計算機集群之間部署有限狀態機提供一種通用方法 ， 並確保集群內的任意節點在某種狀態轉換上保持一致 。 Raft算法的開源實現衆多 ， 在Go 、 C++ 、 Java以及 Scala中都有完整的代碼實現 。 Raft這一名字來源於 " Reliable, Replicated, Redundant, And Fault - Tolerant " （ “ 可靠 、 可複製 、 可冗餘 、 可容錯 ” ） 的首字母縮寫 。 集群內的節點都對選舉出的領袖採取信任 ， 因此Raft不是一種拜占庭容錯算法 。