千家信息网

大数据kafka常见面试题有哪些

发表于:2026-11-02 作者:千家信息网编辑
千家信息网最后更新 2026年11月02日,本篇内容主要讲解"大数据kafka常见面试题有哪些",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"大数据kafka常见面试题有哪些"吧!1、什么是 kafk
千家信息网最后更新 2026年11月02日大数据kafka常见面试题有哪些

本篇内容主要讲解"大数据kafka常见面试题有哪些",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"大数据kafka常见面试题有哪些"吧!

1、什么是 kafka?

Apache Kafka 是一个开源消息系统,由 Scala 写成。是由 Apache 软件基金会开发的一个开源消息系统项目。

Kafka 最初是由 LinkedIn 开发,并于 2011 年初开源。2012 年 10 月从 Apache Incubator 毕业。该项目的目标是为处理实时数据提供一个统一、高通量、低等待的平台。

Kafka 是一个分布式消息队列:生产者、消费者的功能。它提供了类似于JMS 的特性,但是在设计实现上完全不同,此外它并不是 JMS 规范的实现。Kafka 对消息保存时根据 Topic 进行归类,发送消息者称为 Producer,消息接受者称为 Consumer,此外 kafka 集群有多个 kafka 实例组成,每个实例(server) 成为 broker。无论是 kafka 集群,还是 producer 和 consumer 都依赖于 zookeeper 集群保存一些 meta 信息,来保证系统可用性

2、kafka 与传统消息系统的区别

(1)在架构 模型方面

RabbitMQ 遵循 AMQP 协议,RabbitMQ 的 broker 由 Exchange,Binding,queue组成,其中 exchange 和 binding 组成了消息的路由键;客户端 Producer 通过连接channel 和server 进行通信,Consumer 从queue 获取消息进行消费(长连接,queue有消息会推送到 consumer 端,consumer 循环从输入流读取数据)。rabbitMQ 以broker 为中心;有消息的确认机制。

kafka 遵从一般的 MQ 结构,producer,broker,consumer,以 consumer 为中心,消息的消费信息保存的客户端 consumer 上,consumer 根据消费的点,从broker 上批量 pull 数据;无消息确认机制。

(2)在吞吐量

kafka 具有高的吞吐量,内部采用消息的批量处理,zero-copy 机制,数据的存储和获取是本地磁盘顺序批量操作,具有 O(1)的复杂度,消息处理的效率很高。

rabbitMQ 在吞吐量方面稍逊于 kafka,他们的出发点不一样,rabbitMQ 支持对消息的可靠的传递,支持事务,不支持批量的操作;基于存储的可靠性的要求存储可以采用内存或者硬盘。

(3)在可用性方面

rabbitMQ 支持 miror 的 queue,主 queue 失效,miror queue 接管。kafka 的 broker 支持主备模式。

(4)在集群负载均衡方面

kafka 采用 zookeeper 对集群中的 broker、consumer 进行管理,可以注册 topic 到 zookeeper 上;通过 zookeeper 的协调机制,producer 保存对应 topic 的 broker 信息,可以随机或者轮询发送到 broker 上;并且 producer 可以基于语义指定分片,消息发送到 broker 的某分片上。

(5)kafka 与 activeMQ 的区别

Topic:主题,即一个标识,类似于 map 里面的 key,通过它来给消息分类, 消息根据 Topic 进行归类。

共同点:都有生产者和消费者两大组件,生产者发送消息给各自的服务器,

(发送消息是就会定义一个 topic)并进行存储。不同点:

activeMQ:消费者会提前订阅自己需要的 topic,当该 topic 中有了消息以后,activeMQ 服务器会发送消息给消费者,然后消费者再去服务器中拿到自己想要的数据。

Kafka:消费者(指定 topic)会定时去 kafka 服务器中拿该 topic 中的数据。

(6)kafka 的组件介绍

producer:生产者,主要用于我们的消息的生产,通过 producer 将我们的消息 push 到 kafka 集群当中

topic:某一类消息的高度抽象,可以理解成某一类消息的集合,一类消息,每个topic 将被分成多个 partition(区),在集群的配置文件中配置。broker:kafka 的服务器,一个 broker 就代表一个服务器的节点partition:分区的概念,一个 topic 当中的消息,可以拆分成多个 partition 分区,存放在多个不同的服务器上,实现数据存放的横向扩展。

repliaction:副本,所有的 partition 都可以指定存放几个副本,做到数据的冗余,保证数据的安全

segment:每个 partiiton 由多个 segment 组成,segment 又包含了两部分,一个.log 文件,一个是.index 文件

.log:存放我们的日志文件,所有的数据,最后都以日志文件的形式存放到了 kafka 集群当中

.index :索引文件,所有的.log 文件的索引都存放在了这里,便于我们查找某一条日志文件的快速

consumer:消费者,消费我们 kafka 集群当中的消息, 问题:如何知道消费者消费到了哪一条消息来了??? 可以通过记录的方式,记下来每次我们消费的位置。

第一种记录方式:kafka 的本地文件系统,比较慢,对应 kafka 的一个慢速消费的方式

第二种记录方式:zookeeper 当中的节点数据记录,比较快,对应 kafka 的一个快速消费的方式

offset:偏移量,就是记录的我们消费到了哪一条数据来了。

发布者发到某个 topic 的消息会被均匀的分布到多个 part 上,broker 收到发布消息往对应 part 的最后一个 segment 上添加该消息。

3、kafka 集群的安装与搭建

第一步:下载上传压缩包

第二步:解压

第三步:安装包的分发第

四步:修改配置文件

第一台服务器修改配置文件

第二台服务器修改配置文件第三台服务器修改配置文件第四步:三台服务器的启动三台服务器的启动

到此,相信大家对"大数据kafka常见面试题有哪些"有了更深的了解,不妨来实际操作一番吧!这里是网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

消息 消费 数据 文件 服务器 服务 集群 消费者 多个 配置 方式 系统 支持 方面 机制 存储 生产 试题 不同 信息 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 广州为想互联网科技有限公司 广州紫鲸互联网科技有限公司 互联网科技工作委员会毛军 中国互联网科技股 今日互联网科技 金融科技创新监管互联网金融 北京互联网科技 善班互联网科技有限公司 互联网养老 桔豆科技 成都玖崟互联网科技有限公司乐商圈怎么样 互联网科技公司需要的职位 承德科技产业互联网发展 互联网经济与金融科技 江阴互联网智能科技产品进口 互联网风格科技公司名称 普陀区互联网教育科技管理办法 版纳互联网科技选哪家 互联网科技手抄报图片 西安左小互联网科技有限公司 北京军民互联网科技公司 互联网扶贫科技 世界互联网领先科技成果 互联网科技博客 互联网科技宣传片 互联网 科技服务平台 广州市恰铎互联网科技有限公司 银行科技岗属于互联网吗 深圳互联网科技园地址 互联网领先科技成果宣传视频 宁波允成互联网科技有限公司
0