# `Raft`

![`smart`](RaftStateMachine_aa_001_20221025.png)

------------------------------------------------------------
`Raft` is a state machine, `Raft` uses snapshot and log to do the replication.

`Raft` is something between `sync` and `async` styles, kind like `Semi-Sync` replication.
