Kafka 副本因子的合理设置
一 核心原则与快速建议
二 与一致性与持久性的配置联动
三 容量与成本的量化评估
四 不同场景的推荐配置
| 场景 | 副本因子 | acks | min.insync.replicas | unclean.leader.election.enable | 说明 |
|---|---|---|---|---|---|
| 开发/功能验证 | 1 | 1 或 0 | 1 | true | 节省资源,允许不可用与数据丢失 |
| 日志/埋点(容忍少量丢失) | 2–3 | 1 | 1–2 | true | 在成本与可用性间折中 |
| 生产交易/强一致 | 3–5 | all | 2–3(≈RF 的 2/3) | false | 高可靠与高一致性 |
| 跨机架/跨可用区 | ≥3 | all | 2–3 | false | 结合 broker.rack 做机架感知放置 |
| 上述组合可在一致性与可用性之间取得稳定平衡,实际以 SLA 与成本约束微调。 |
五 落地操作与运维要点