Kafka replication
Each Kafka partition has a replication factor — usually 3 — meaning the data lives on 3 different brokers. One is the leader (serves reads/writes), the others are followers that continuously pull from the leader. The set of replicas that are "caught up" is the in-sync replicas (ISR). Two configs decide your durability posture: acks on the producer — 0 (fire and forget), 1 (wait for leader), all (wait for all in-sync replicas — zero data loss on single broker failure); min.insync.replicas on the topic — minimum ISR size needed to accept writes. The classic durable setup: replication.factor=3, min.insync.replicas=2, acks=all — survives one broker failure with zero data loss, survives two with possible write unavailability (correct behaviour: reject writes you can't durably persist). Cutting corners here is the most common cause of mystery data loss in Kafka.