首页 文章

一名Kafka经纪人连接多个动物园管理员

提问于
浏览
1

我是Kafka,zookeeper和Storm的新手 . 在我们的环境中,我们有一个Kafka经纪人连接到多个动物园管理员 . 生产环境 者是否有利于将消息发送到特定主题并将一个代理商上的分区发送给多个动物园管理员和多个经纪人与多个动物园管理员?

1 回答

  • 0

    就在这里 . Kafka允许您通过添加经纪人进行扩展 . 当您将Kafka群集与单个代理一起使用时,所有分区都驻留在该单个代理上 . 但是当你有多个经纪人时,Kafka会在他们之间拆分分区 . 因此,经纪人 A 可能会被选为您主题的分区 12 的领导者,而经纪人 B 则是分区 3 的领导者 . 因此,当您向主题发布消息时,客户端将在两个代理的各个分区之间拆分消息 .

    请注意,我也提到过领导人选举 . 将代理添加到Kafka集群可以进行复制 . 正如我在我的例子中提到的,Kafka使用ZooKeeper为每个分区选择一个领导者 . 一旦领导者被选举,客户端在分区之间分割消息并将每个消息发送给领导者以进行适当的分区 . 根据主题配置,领导者可以同步将消息复制到备份 . 因此,在我的示例中,如果主题的复制因子为 2 ,则代理 A 将同步将分区 12 的消息复制到代理 B ,并且代理 B 将同步将分区 3 的消息复制到代理 A .

    所以,这就是说添加代理可以提供可伸缩性和容错性 .

相关问题