kafka中broker replication-factor partitions的含义

  • 现在让我们来看看主题(topic),分区(partition)和日志(log)的关系
  • 你可以把 topic 理解为文件夹,partition 为 topic 下面的子文件夹,log 在 partition 下,而消息保存在 log 中
  • kafka-topics.bat --create --zookeeper localhost:2181 --replication-factor 2 --partitions 3 --topic topic1
  • 上面的命令中–partitions 3 的意思是在 topic1下创建3个分区。那–replication-factor 2 是什么意思呢?它的意思是将任意一个分区复制到2个broker 上,这样如果一个broker 挂了,我们仍然可以从另一个broker 上获取到消息,那如果有2个broker挂了呢?呵呵,那就真挂了。怎么样?还没理解?不要紧,看看下面的目录结构你就知道了。
    在这里插入图片描述
  • 等过了一段时间,你可能已经忘记了topic1 是如何定义的了,你想查看它的详情,试试下面的命令吧。
  • kafka-topics.bat --describe --zookeeper localhost:2181 --topic topic1 Windows下命令
    在这里插入图片描述
  • 每一个分区都有一个broker为leader,它负责该分区内的所有读写操作,其他broker 被动的复制leader broker。如果leader broker 挂了,那么其他broker中的一个将自动成为该分区的新leader。
  • Replicas: 0,1 表示该分区保存在 broker 0 和 broker 1下。
  • Isr: 0,1 表示当前我们可以在 broker 0 和 broker 1 下访问该分区,如果 broker 0挂了,那就像这样子了 Isr: 1
  • 关闭 broker 1 现在我们将启动broker 1的命令窗口关闭。然后使用下面的命令再次查看一下 topic1 的状态。
    在这里插入图片描述
  • 参考:https://blog.csdn.net/LiZhen314/article/details/81029044
发布了27 篇原创文章 · 获赞 4 · 访问量 3184

猜你喜欢

转载自blog.csdn.net/u012019209/article/details/100607285