kafka基础概念-ISR详解
ISR详解-ISR
主要是讲 主 往 从同步中的问题
当绿色P1接收到写入的数据,要同步到紫色的P1S1和P1S2
如何保证一致性呢?
使用In Sync Replicas 也就是ISR概念
为什么不一致的?
因为P1S1同步数据 可能花费 50ms P1S2可能花费60ms
同步完的进入ISR集合,
同步时间是可以设置规定时间的(容忍时间)
没有在规定时间同步完的进入OSR集合
绿色部分主要监督 紫色部分有没有超时
ISR详解—HW–LEO
HW
: High Watermark,高水位线,消费者只能最多拉取到高水位线
的消息
LEO
: Log End Offset, 日志文件的最后一条记录的offset (偏移量)
ISR集合与HW和LEO直接存在着密不可分的关系
整个的这一条(0-9)可以看做
partition
消费者真正能消费的是0-5,但是6和6之后就能不消费
但是日志可能已经写到9了
为什么?
这个是跟ISR有关系
比如现在生产者要将3、4写入(如图-1),按照规矩呢,3、4首先会写到leader中,(如图-2)
此时可能follow1和follow2,没有将3、4同步过来,也就可能入图3的情况
kafka要求必须全部同步了,HW才能升高
这时 HW就不能升高
版权归原作者 Jeroro_franklin 所有, 如有侵权,请联系我们删除。