推荐学习
- 分布式/Spring/高并发/设计模式等问个遍,网易3面绝了
![eb918a0aa0a3b40bf218d7cd48901141.png](https://i-blog.csdnimg.cn/blog_migrate/d436844aac7a81bf0721b25c32dabfa3.jpeg)
一、必须知道的专业名词
kafka中,每个partition可以有多个副本(Replica),分为leader、follower,正常情况下,客户端只向leader发送数据、leader消费数据,follower的出现是为了保证kafka数据的高可用和一致性,也是作为灾备的存在。再保证高可用的过程中,leader与follower进行数据同步时,产生的如下一些专业术语,都是基于partition之内的概念。为了方便理解,假设以下所有的描述,都是基于某个只有一个partition,partition里面有3个副本的topic。
- HW(High Watermark)俗称高水位,consumer能够消费kafka的最大offset
- LEO (Log End Offset)已经写入kafka log中日志的最大offset值加1
- AR (Assigned Replicas) kafka 分区的所有副本
- ISR (In Sync Replicas) 在kafka中,所有与leader保持数据同步的副本(