Overview of Dragonboat features
masterDragonboat is a high-performance, multi-group Raft consensus library written in pure Go. It provides fault-tolerance by allowing a system to continue operating as long as a majority of members are available.
Key features include:
- Multi-group Raft: Scalable implementation supporting many concurrent Raft groups.
- State Machine Support: Supports both disk-based and memory-based state machines.
- Protocol Support: Implements leader election, log replication, snapshotting, log compaction, membership changes, pre-vote, ReadIndex for linearizable reads, leadership transfer, non-voting members, and witness members.
- High Performance: Fully pipelined with TLS mutual authentication support, optimized for high-latency environments.
- Extensibility: Custom Raft log storage and transport support.
- Observability: Prometheus-based health metrics.
- Reliability: Extensively tested with Jepsen's Knossos linearizability checker.