消息队列副本
Replica 是什么?
分区的备份,Leader 挂了 Follower 顶上
类比:重要文件的备份硬盘,主机坏了立刻换上
它是什么
每个分区有一个 Leader 负责读写,其余是 Follower,只负责同步。Follower 从 Leader 拉数据,保持和 Leader 一致。
ISR(In-Sync Replicas)是「跟得上 Leader」的副本集合。只有 ISR 里的副本才有资格被选为新 Leader。
可靠性三件套
想让消息真的不丢,三处都要配,缺一不可。
- replication.factor ≥ 3:副本数够多
- min.insync.replicas ≥ 2:至少两个副本确认才算写成功
- acks=all:生产者等所有 ISR 确认
副本不是免费的
副本会成倍占用磁盘和网络带宽。3 副本意味着同样的数据写三份、跨机架复制。副本数要根据可靠性要求和成本权衡,不是越多越好。