Kafka分区的broker关系
时间: 2024-05-26 07:16:49 浏览: 90
eventing-kafka-broker:备用Kafka Broker实施
在 Kafka 中,每个主题(Topic)可以分成多个分区(Partition),每个分区可以存储一定量的消息。每个分区都有一个 leader broker 和多个 follower broker 组成的 ISR(in-sync replicas)集合。
当生产者向 Kafka 发送消息时,它会选择一个 Topic 对应的 Partition,并将消息发送到该 Partition 的 leader broker 上,leader broker 会将消息写入本地磁盘并将消息复制到 ISR 集合中的 follower broker 上。当消费者从 Kafka 中读取消息时,它会从 Partition 的 leader broker 上读取消息。
如果 leader broker 失效,Kafka 会自动选举一个 follower broker 作为新的 leader,然后生产者和消费者会自动切换到新的 leader。如果一个 follower broker 与 leader broker 失去联系,则该 follower broker 将被从 ISR 集合中移除,直到它重新与 leader broker 同步。
总之,Kafka 分区的 broker 关系是由每个分区的 leader broker 和 ISR 集合中的 follower broker 组成的。这种设计能够提高 Kafka 的可用性和可扩展性。
阅读全文