卡夫卡高级制作人何时,多久选举一位领导者?
它是在发送每条消息之前执行还是在建立连接时仅执行一次?
最佳答案
Every broker has a information about the list of topics(and partitions) and their leaders which will be kept up to date by the zoo keeper whenever the new leader is elected or when the number of partition changes.
因此,当生产者对其中一个经纪人进行调用时,它将以该信息列表进行响应。生产者收到此信息后,将对其进行缓存并使用它来连接至领导者。因此,下一次当它想要将消息发送到该特定主题(和分区)时,它将使用此缓存的信息。
让我们假设只有一位领导者,并且该主题/分区二人组没有副本,并且被压碎了。在这种情况下,它将尝试连接到该领导者,但失败。它将尝试从已缓存的其他代理列表中获取领导者,以检查该主题是否存在任何领导者!由于找不到任何东西,它将尝试击中同一个领导者(已死),并且在达到最大重试次数后,它将引发异常!
关于apache-kafka - 卡夫卡领导人选举何时举行?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/43146546/