fd6090216a | ||
---|---|---|
.gitignore | ||
README.md | ||
TODO | ||
append_entries.go | ||
command.go | ||
election_timer.go | ||
election_timer_test.go | ||
join_command.go | ||
log.go | ||
log_entry.go | ||
log_test.go | ||
peer.go | ||
request_vote.go | ||
server.go | ||
server_test.go | ||
test.go | ||
util.go |
README.md
go-raft
Overview
This is an Go implementation of the Raft distributed consensus protocol. Raft is a protocol by which a cluster of nodes can maintain a replicated state machine. The state machine is kept in sync through the use of a replicated log.
For more details on Raft, you can read In Search of an Understandable Consensus Algorithm by Diego Ongaro and John Ousterhout.