1. ACK机制简介
- 目的:确保生产者发送的消息可靠地写入Kafka集群。
- 核心:生产者发送消息后需等待Kafka集群的确认。
2. ACK级别
- acks=0:不等待确认,效率最高,但可能丢数据。
- acks=1:等待Leader分区确认,可靠性较高,但Leader故障可能丢数据(Kafka 2.0默认值)。
- acks=all(或-1):等待所有ISR分区确认,最可靠,但性能较低。
3. ISR(In-Sync Replicas)
- 定义:与Leader副本同步的副本集合,包含所有已确认消息。
- 作用:保证数据可靠性,确保副本与Leader数据一致。
4. Leader与Follower
- Leader:处理所有读写请求。
- Follower:从Leader拉取数据并同步。