Lesson 16 / 32
Leader Election & Idempotency
Agreeing on one truth among many nodes, and surviving retries safely.
Why you need a leader
Some decisions (who accepts writes, who assigns work) need exactly one node in charge at a time. Leader election lets a cluster agree on that node and detect when it needs replacing.
Raft, briefly
Raft is a consensus algorithm where nodes vote for a leader using randomized timeouts; the candidate with the most votes wins a term. The leader replicates a log to followers, and an entry is only considered committed once a majority has it — this survives any minority of node failures.
Idempotency saves you
A network timeout doesn't tell you if the request landed. If retries and duplicate delivery are inevitable, make operations idempotent: a client-generated idempotency key lets the server recognize and safely ignore a repeat of the same logical request.
Quick check: In Raft, when is a log entry considered committed?
- As soon as the leader writes it
- Once a majority of nodes have replicated it
- Once every node has replicated it
Answer
Once a majority of nodes have replicated it — Majority (quorum) commitment lets Raft tolerate a minority of node failures while staying correct.