盘点大数据面试中遇到的那些问题————KAFKA

又是一个毕业季,又是到了各位代码小白紧张刺激的找工作环节。面对大数据的面试。你是不是也表现得很忐忑。担心自己不会答怎么办。没关系。你们的勇勇带着自己面试中被问到的一些问题来了。本期让我们一起来看一下面试中被问到的知识点——KAFKA

1.Kafka概述

kafka是一个分布式发布-订阅消息的消息队列,可以处理大量数据,使得消息从一个端点传递到另一个端点,Kafka适合离线和在线消息消费,kafka消息保留在磁盘上,并在集群内复制以防数据丢失

2.为什么要选择kafka,(优点)

1.可靠性:kafka是分布式,分区,复制和容错的

2.可扩展性:kafka消息传递系统轻松缩放,无需停机

3.分布式:日志的分区partition在Kafka集群的服务器上

4.耐用性:kafka使用分布式提交日志,这意味着消息会尽可能快的保存在磁盘上,因此它是持久的

5.性能:kafka对于发布和订阅消息都具有高吞吐量,即使存储许多TB的消息,它也保持稳定的性能

3.4Kafka基础架构

Producer:生产者,将客户端生产的消息发送到kafka中,支持消息的异步发送和批量发送

Broker:服务代理节点,集群中的一台服务器就是一个broker,同一个topic的消息可以分布在多个broker中

Consumer:消费者,接受消息,用于相应的业务逻辑

Zookeeper:用于在集群中不同节点之间的通信,在kafka中,它被用于提交偏移量,如果节点在任何情况下失败了,它可以从之前提交的偏移量中获取

Consumer Group:消费者组,指的是多个消费者共同组成一个组来消费一个 Topic 中的消息

4.Kafka-kraft模式的优点(最少说出3) [面试重点]

上图为 Kafka 现有架构,元数据在 zookeeper 中,运行时动态选举 controller,由

controller 进行 Kafka 集群管理。右图为 kraft 模式架构(实验性),不再依赖 zookeeper 集群,而是用三台 controller 节点代替 zookeeper,元数据保存在 controller 中,由 controller 直接进行 Kafka 集群管理。

  1. Kafka 不再依赖外部框架,而是能够独立运行;
  2. controller 管理集群时,不再需要从 zookeeper 中先读取数据,集群性能上升;
  3. 由于不依赖 zookeeper,集群扩展时不再受到 zookeeper 读写能力限制;
  4. controller 不再动态选举,而是由配置文件规定。这样我们可以有针对性的加强
  5. controller 节点的配置,而不是像以前一样对随机 controller 节点的高负载束手无策。

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值