本文主要是介绍27高水位和leader epoch,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
1.leader epoch是如何在broker之间同步的
2.已经写入的消息不一定发送成功,消息发送成功的判断依据是什么?
高水位前的消息为已提交的消息,配置acks为all的生产者会等待ISR副本中的所有副本都同步了该消息才会认为消息已经成功提交。副本同步消息有时间延迟,如果生产者同步发送消息则会等待一段时间。
3.leader和follow副本同步存在错配,在这段高水位未同步的时间里如果接连发生follow和leader副本重启,则会造成消息丢失。leader epoch机制通过日志截断前先向leader获取leo来确定要不要截断。leadepoch的作用是fencing逻辑,确认从leader获取的leo是否是有效的(leo大于最新的leader epochoffset)?
这篇关于27高水位和leader epoch的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!