sumimakito / raft

An implementation of the Raft distributed consensus algorithm in Go.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Raft

workflow-test codecov

An implementation of the Raft distributed consensus algorithm in Go.

This implementation tries to implement Raft with:

  • Leader election
  • Log replication
  • Persistence
  • Membership changes (joint consensus)
  • Log compaction (snapshotting)

Roadmap

  • API server
  • Persistence (with bbolt)
  • gRPC transport
  • KV store (as an example)
  • Snapshotting
  • Full tests
  • Replication optimization
  • Improve API server
  • Internal metrics
  • Logger optimization

License

This implementation is under the Apache 2.0 license. See the LICENSE file for details.

About

An implementation of the Raft distributed consensus algorithm in Go.

License:Apache License 2.0


Languages

Language:Go 99.4%Language:Makefile 0.6%