acks + min.insync.replicas
Replication and the ISR
Each partition has one leader and N-1 followers. Followers continuously fetch from the leader. A follower that is caught up (within replica.lag.time.max.ms) is in the In-Sync Replica (ISR) set.
Producer durability is governed by acks:
acks=0— fire-and-forget. May lose data on broker crash.acks=1— wait for leader only. Loses data if leader dies before replication.acks=all(withmin.insync.replicas≥2) — wait for every ISR. SurvivesRF-1failures.
Do not use acks=1 for data you can't afford to lose. The performance win is small; the data-loss surface is huge.