发布网友 发布时间:2022-04-25 04:48
共1个回答
热心网友 时间:2023-08-18 10:46
需要一个地方存元信息。zookeeper又是分布式,做配置管理比较好的。于是就用上了。
没zookeeper的话,也需要一套机制存储元数据和交换集群信息的工具。
kafka的官方文档有说明。zookeeper是为了解决分布式一致性问题的工具。
至于kafka为什么使用zk,你首先要知道zk的作用, 作为去中心化的集群模式。
需要要消费者知道现在那些生产者(对于消费者而言,kafka就是生产者)是可用的。
如果没了zk消费者如何知道,如果每次消费者在消费之前都去尝试连接生产者测试下是否连接成功,那么效率问题怎么解决。
所以kafka需要zk,在kafka的设计中就依赖了zk了。