7、Zookeeper 对于 Kafka 的作用是什么?
Zookeeper 是一个开放源码的、高性能的协调服务,它用于 Kafka 的分布式应用。
Zookeeper 主要用于在集群中不同节点之间进行通信
在 Kafka 中,它被用于提交偏移量,因此如果节点在任何情况下都失败了,它都
可以从之前提交的偏移量中获取
除此之外,它还执行其他活动,如: leader 检测、分布式同步、配置管理、识别新
节点何时离开或连接、集群、节点实时状态等等。
8、数据传输的事务定义有哪三种?
和 MQTT 的事务定义一样都是 3 种。
(1)最多一次: 消息不会被重复发送,最多被传输一次,但也有可能一次不传输
(2)最少一次: 消息不会被漏发送,最少被传输一次,但也有可能被重复传输.
(3)精确的一次(Exactly once): 不会漏传输也不会重复传输,每个消息都传输
被一次而且仅仅被传输一次,这是大家所期望的
9、Kafka 判断一个节点是否还活着有那两个条件?
(1)节点必须可以维护和 ZooKeeper 的连接,Zookeeper 通过心跳机制检查每
个节点的连接
(2)如果节点是个 follower,他必须能及时的同步 leader 的写操作,延时不能太
久