> 文档中心 > 大数据面试题---kafka部分(一)

大数据面试题---kafka部分(一)


kafka 设计时是什么样子的

  1. kafka 将消息以topic为单位进行归纳
  2. 将向kafka发布消息的程序称为生产者
  3. kafka将订阅消息的程序称为消费者
  4. kafka将以集群的的方式运行,由一个或多个服务器组成,每一个服务器叫做broker
  5. 生产者通过网咯将消息发送到kafka集群,集群将向消费者提供消息

数据传输的事务定义有哪三种

  1. 最多一次:消息不会被重复发送,最多被传输一次,也有可能一次都不被传输
  2. 最少一次:消息不会被漏发送,最少被传输一次,但也有可能被重复传输
  3. 精确的一次:不会漏传输也不会重复传输每个消息都传输一次且仅仅被传输一次

kafka判断一个节点是否还活着有哪些条件

  1. 节点必须可以维护和ZooKeeper连接,ZooKeeper通过心跳机制检查每个节点的连接
  2. 如果节点是个follwer(跟随者)的状态他必须能及时的同步leader(领导者) 的写操作延时不能太久

producer(生产者) 是否直接将数据发送到broker(经纪人)的leader(主节点)

producer(生产者) 直接将数据发送到broker(经纪人)的leader(主节点),不需要在多个节点进行分发,为了帮助producer(生产者)做到这点 ,所有的kafka节点都可以及时的告知哪些节点是活动的目标topic 目标分区的leader(主节点)在哪,这样producer(生产者)就可以直接将消息发送到目的地了

kafka consumer(消费者)是否可以消费指定分区的消息

kafka consume