ISR
ISR,In-Sync Replicas 同步副本拿到意思
在每个kafka中,每个topic partition可以有多个replica。ISR是与Leader replica保持同步的follower
replica集合
可以说ISR机制就是确保数据的可靠性和一致性的
当消息被sender线程发送后,它会先被写入Leader副本,然后再由follower主动轮询Leader同步消息
只有ISR中的所有副本成功接收到并确认了消息后,主副本才会认为消息已经成功提交
ISR列表维护
什么时候follower会被移除出ISR列表
replica.lag.max.messages
在0.9x之前是,表示follower落后Leader这个数就会被移除
这个就有大问题,如果高并发场景,Leader一下子收到几万条消息,那么所有follower都会被驱逐
在0.9x后,
新增了replica.lag.max.ms
表示follower的LEO一直落后Leader超过这个replica.lag.max.ms时间,才会被移除出境