【问题标题】:How Kafka broker works even zookeeper cluster downKafka 代理如何工作,即使 Zookeeper 集群关闭
【发布时间】:2020-08-17 04:01:07
【问题描述】:

我配置了三个zookeeper节点集群,两个broker连接zookeeper集群。

我创建了 topic ,用于在发送消息时进行测试用例故障转移或丢失。

基于消费者组示例,我运行了两个消费者 shell 来消费消息

我已经发送了一个文本文件数据,如逐行..生成消息。

在最后的测试用例中,我关闭了所有 zookeeper 节点和一个代理

我仍然可以仅使用一个代理来生成和使用全部消息。怎么可能?

这是我的架构Kafka Architecture

【问题讨论】:

    标签: apache-kafka apache-zookeeper


    【解决方案1】:

    这个article解释了动物园管理员在Kafka中的作用。

    回答你的问题。客户端将一直工作,直到下一次元数据刷新发生。如果不可用,客户端将获取它连接的主题的元数据,例如分区及其领导者。现在一旦有了这些,它就会直接与这些代理连接并产生/使用消息,除非领导者发生变化,并且直到下一次元数据刷新发生。元数据刷新是周期性操作。

    元数据.max.age.ms

    即使我们没有看到任何分区领导层更改以主动发现任何新的代理或分区,我们也会强制刷新元数据的时间段(以毫秒为单位)。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-01-25
      • 2017-11-20
      • 2019-04-12
      • 2019-02-27
      • 2021-03-06
      • 2017-06-09
      • 2016-02-02
      • 2019-09-27
      相关资源
      最近更新 更多