为什么搭建Kafka需要zookeeper?

翟志军 发布于 2016/03/09 07:06
阅读 23K+
收藏 0

请问 Kafka 为什么要用到ZooKeeper? 

因为我们看很多教程介绍Kafka安装时,都说要安装ZooKeeper,但是又不说为什么。

加载中
0
Feng_Yu
Feng_Yu

kafka的官方文档有说明。zookeeper是为了解决分布式一致性问题的工具。

你可以简单的认为kafka将zookeeper做数据库了

陆朋
陆朋
回复 @翟志军 :
翟志军
翟志军
回复 @Feng_Yu : 我的意思是kafka用了zookeeper哪个场景?
Feng_Yu
Feng_Yu
回复 @翟志军 : kafka是消息队列啊,如果你不了解消息队列的话,那么你不知道为什么要用这个东西。另外需要说明的一点是,由于kafka自身无状态性(和HTTP协议类似),所以不需要处理状态相关数据,这样性能大大提升了。状态信息实际上是consumer处理的。
翟志军
翟志军
解决分布式一致性问题,只它的一个使用场景。而Kafka又用的是哪个场景?
0
小乞丐
小乞丐

kafka 很多说不需要安装zk的是因为他们都使用了kafka自带的zk

至于kafka为什么使用zk,你首先要知道zk的作用, 作为去中心化的集群模式。

需要要消费者知道现在那些生产者(对于消费者而言,kafka就是生产者)是可用的。

如果没了zk消费者如何知道呢?如果每次消费者在消费之前都去尝试连接生产者测试下是否连接成功,效率呢?

所以kafka需要zk,在kafka的设计中就依赖了zk了。

翟志军
翟志军
需要要消费者知道现在那些生产者(对于消费者而言,kafka就是生产者)是可用的。 我觉得这句说到点了。
0
jack_w
jack_w

(卡夫卡)生产者                 (zk)消费者

     kafka                          zookeeper

kafka需要zk,在kafaka的设计中就是依赖了zk了

 

返回顶部
顶部