Browse Source

raft: add features section to readme file

Xiang Li 9 years ago
parent
commit
c76dcc5190
1 changed files with 21 additions and 0 deletions
  1. 21 0
      raft/README.md

+ 21 - 0
raft/README.md

@@ -9,6 +9,27 @@ A simple example application, _raftexample_, is also available to help illustrat
 how to use this package in practice:
 https://github.com/coreos/etcd/tree/master/contrib/raftexample
 
+# Features
+
+This raft implementation is a full feature implementation of Raft protocol. Features includes:
+
+- Leader election
+- Log replication
+- Log compaction 
+- Membership changes
+- Leadership transfer extension
+- Lease-based linearizable read-only queries served by both the leader and followers
+
+This raft implementation also includes a few optional enhancements:
+
+- Optimistic pipelining to reduce log replication latency
+- Flow control for log replication
+- Batching Raft messages to reduce synchronized network I/O calls
+- Batching log entries to reduce disk synchronized I/O
+- Writing to leader's disk in parallel
+- Internal proposal redirection from followers to leader
+- Automatic stepping down when the leader loses quorum 
+
 ## Notable Users
 
 - [cockroachdb](https://github.com/cockroachdb/cockroach) A Scalable, Survivable, Strongly-Consistent SQL Database