新版kafka消费者、生产者配置为何使用bootstrap-servers
直接配置broker list
而不是使用zookeeper服务器地址?
难道新版kafka消费者、生产者不需要从zookeeper获取信息了吗?
直接使用bootstrap-servers的话,假如有kafka broker新增的话
不是要重新配置,重启么?
新版kafka消费者、生产者配置为何使用bootstrap-servers
直接配置broker list
而不是使用zookeeper服务器地址?
难道新版kafka消费者、生产者不需要从zookeeper获取信息了吗?
直接使用bootstrap-servers的话,假如有kafka broker新增的话
不是要重新配置,重启么?
因为zookeeper要被替代了,kafka团队不想再依赖zk了,目前,Kafka使用ZooKeeper来存储分区和代理的元数据,并选择一个Broker作为Kafka控制器,而希望通过删除对ZooKeeper的依赖,将使Kafka能够以一种更具伸缩性和健壮性的方式管理元数据,实现对更多分区的支持,它还将简化Kafka的部署和配置。但是目前我们还是需要Zookeeper(最新版kafka是2.3.1)。 参见 https://cwiki.apache.org/conf...
3 回答2.6k 阅读✓ 已解决
3 回答4.1k 阅读✓ 已解决
8 回答3.7k 阅读
4 回答2.8k 阅读✓ 已解决
2 回答2.7k 阅读✓ 已解决
3 回答2.5k 阅读✓ 已解决
4 回答1.9k 阅读
个人理解,新版消费者通过brokers而不是zookeeper是因为对消费端而言zookeeper应该是透明的,消费端需要的是kafka里的数据而zookeeper是kafka集群内部需要的,不应被暴露给外部,当然消费者获取broker信息本质仍是通过zookeeper来获取,只是这一过程被kafka隐藏起来了,从语义上隐藏了zookeeper服务