新版kafka消费者、生产者配置为何使用bootstrap-servers而不是zookeeper服务器地址?

新版kafka消费者、生产者配置为何使用bootstrap-servers
直接配置broker list
而不是使用zookeeper服务器地址?
难道新版kafka消费者、生产者不需要从zookeeper获取信息了吗?
直接使用bootstrap-servers的话,假如有kafka broker新增的话
不是要重新配置,重启么?

阅读 7.1k
评论
    2 个回答

    个人理解,新版消费者通过brokers而不是zookeeper是因为对消费端而言zookeeper应该是透明的,消费端需要的是kafka里的数据而zookeeper是kafka集群内部需要的,不应被暴露给外部,当然消费者获取broker信息本质仍是通过zookeeper来获取,只是这一过程被kafka隐藏起来了,从语义上隐藏了zookeeper服务

      • 5
      • 新人请关照

      因为zookeeper要被替代了,kafka团队不想再依赖zk了,目前,Kafka使用ZooKeeper来存储分区和代理的元数据,并选择一个Broker作为Kafka控制器,而希望通过删除对ZooKeeper的依赖,将使Kafka能够以一种更具伸缩性和健壮性的方式管理元数据,实现对更多分区的支持,它还将简化Kafka的部署和配置。但是目前我们还是需要Zookeeper(最新版kafka是2.3.1)。 参见 https://cwiki.apache.org/conf...

        撰写回答

        登录后参与交流、获取后续更新提醒

        相似问题
        推荐文章