2017-06-16 66 views

回答

4

除了在主题上设置复制因子2或3以确保最终创建备份副本副本之外,还应该使用acks = all发布消息,以确保确认表明数据已写入的保证所有的副本。否则,当ack = 1时,只有1个副本被提交后会得到ack,而ack = 0则根本没有ack,所以你永远不会知道你发布的消息是否已经将它记录到Kafka提交日志中。

还将不干净的leader选项参数设置为false,以确保只有insync副本可以成为领导者。

0

是的,复制因子定义了这一点。

1

在Kafka中,您可以定义一个主题的复制因子,并以这种方式将每个分区复制到更多的代理上。其中之一是生产者和消费者连接交换信息的领导者。另一个是追随者,从领导者的消息副本中获得同步。如果领导者失败,新的领导者选举将在所有同步副本之间开始。卡夫卡将支持N-1失败的经纪人,其中N是复制因素。