面试官:你对Kafka了解吗?这41个问题你能答出几个

2023-11-10

一、请说明什么是Apache Kafka?

Apache Kafka是由Apache开发的一种发布订阅消息系统,它是一个分布式的、分区的和重复的日志服务。

二、请说明什么是传统的消息传递方法?

传统的消息传递方法包括两种:

  • 排队:在队列中,一组用户可以从服务器中读取消息,每条消息都发送给其中一个人。
  • 发布-订阅:在这个模型中,消息被广播给所有的用户。

三、 请说明Kafka相对传统技术有什么优势?

  • 快速:单一的Kafka代理可以处理成千上万的客户端,每秒处理数兆字节的读写操作。
  • 可伸缩:在一组机器上对数据进行分区和简化,以支持更大的数据
  • 持久:消息是持久性的,并在集群中进行复制,以防止数据丢失。
  • 设计:它提供了容错保证和持久性

四、在Kafka中broker的意义是什么?

接收Producer发过来的数据,并且将它持久化,同时提供给Consumer去订阅组成Kafka集群节点,之间没有主从关系,依赖ZooKeeper来协调,broker负责消息的读取和存储,一个broker可以管理多个partition

五、什么是broker?作用是什么?

一个单独的kafka server就是一个broker,broker主要工作就是接收生产者发过来的消息,分配offset,之后保存到磁盘中。同时,接收消费者、其他broker的请求,根据请求类型进行相应的处理并返回响应,在一般的生产环境中,一个broker独占一台物理服务器

六、Kafka服务器能接收到的最大信息是多少?

Kafka服务器可以接收到的消息的最大大小是1000000字节。

七、解释Kafka的Zookeeper是什么?我们可以在没有Zookeeper的情况下使用Kafka吗?

Zookeeper是一个开放源码的、高性能的协调服务,它用于Kafka的分布式应用。作用:协调Kafka Broker,存储原数据:consumer的offset+broker信息+topic信息+partition个信息。

不,不可能越过Zookeeper,直接联系Kafka broker。一旦Zookeeper停止工作,它就不能服务客户端请求。

Zookeeper主要用于在集群中不同节点之间进行通信

在Kafka中,它被用于提交偏移量,因此如果节点在任何情况下都失败了,它都可以从之前提交的偏移量中获取

除此之外,它还执行其他活动,如: leader检测、分布式同步、配置管理、识别新节点何时离开或连接、集群、节点实时状态等等。

八、解释Kafka的用户如何消费信息?

在Kafka中传递消息是通过使用sendfile【零拷贝】 API完成的。它支持将字节从套接口转移到磁盘,通过内核空间保存副本,并在内核用户之间调用内核。零拷贝:用户向内核去发送一个命令,我要操作那些数据,然后直接从磁盘转成Socket Buffer,再从Socket Buffer到网卡Buffer,再传出去【少了两次的copy】

九、解释如何提高远程用户的吞吐量?

如果用户位于与broker不同的数据中心,则可能需要调优套接口缓冲区大小,以对长网络延迟进行摊销。

十、解释一下,在数据制作过程中,你如何能从Kafka得到准确的信息?

在数据中,为了精确地获得Kafka的消息,你必须遵循两件事: 在数据消耗期间避免重复,在数据生产过程中避免重复。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

面试官:你对Kafka了解吗?这41个问题你能答出几个 的相关文章

随机推荐

  • JS 常用插件——下拉刷新、上拉加载,左右滑动,移动端调试,图片预览、放大缩小、旋转

    常用插件大全 非常好用 可以达到事半功倍的效果 下拉刷新 上拉加载 mescroll 上下 左右滑动 better scroll 移动端调试 Vconsole 图片预览 放大缩小 旋转 viewerjs 对象转字符串 并以 拼接成URL q
  • Python 将数据写入csv、xlsx、xls文件中(工厂方法、封装、优雅)

    记录 将数据写入csv xlsx xls文件中 工厂方法 封装 优雅 前言 文件目录存放结构 my file save py wrapper verify param py 封装csv my csv py 工厂方法 savedata fac
  • vite、vue3本地页面正常显示不刷新,外网穿透后页面不停刷新

    明明本地不会刷新 但映射到外网就会不停刷新页面 百度了一篇CSDN文章 vite项目 通过外网域名访问 无限刷新 的解决办法 没有解决我的问题 我使用的是natapp进行外网穿透 报错信息是 WebSocket connection to
  • C++ 生成随机数

    C 库有一个名为 rand 的函数 每次调用该函数都将返回一个非负整数 要使用 rand 函数 必须在程序中包含
  • 软件工程第一次阅读作业

    项目 内容 本作业属于北航软件工程课程 博客园班级链接 作业要求请点击链接查看 作业要求 我在这门课程的目标是 成为一个具有一定经验的软件开发人员 这个作业在哪个具体方面帮助我实现目标 让我对自己目前的状况有一个更加清醒的认识 1 快速阅读
  • 【华为OD统一考试A卷

    华为OD统一考试A卷 B卷 新题库说明 2023年5月份 华为官方已经将的 2022 0223Q 1 2 3 4 统一修改为OD统一考试 A卷 和OD统一考试 B卷 你收到的链接上面会标注A卷还是B卷 请注意 根据反馈 目前大部分收到的都是
  • jQuery如何判断input元素是否获得焦点(点击编辑时)

    问题提出 如果你要判断input元素是否获得焦点 或者是否处在活动编辑状态 使用jQuery的 hasFocus 方法或 is focus 方法貌似都无效 搜索网上给出的办法 几乎净是采用上述处理方法 然并卵 都是扯淡 我的解决办法 监听点
  • Caffe中对MNIST执行train操作执行流程解析

    之前在 http blog csdn net fengbingchun article details 49849225 中简单介绍过使用Caffe train MNIST的文章 当时只是仿照caffe中的example实现了下 下面说一下
  • Windows下VVC参考软件VTM10.0编译和运行

    1 预备工作 VTM软件下载 链接https vcgit hhi fraunhofer de jvet VVCSoftware VTM tree masterhttps vcgit hhi fraunhofer de jvet VVCSof
  • Word中批量更新域的两个小方法

    一处域更新 如果只有一处需要更新 对着域右键选择 更新域 即可 多处域更新 很多需要更新的时候 可以如下操作 两种方法应该都可以 选择 打印预览 可以更新文档中的所有域 MOS认证的老师教的 CTRL A 全选 然后F9 更新 即可 自己觉
  • UE4 虚幻引擎,绑定Mesh到Skeleton骨骼插槽Socket

    1 在Skeleton骨骼中Add socket添加插槽 新建的Slot socket插槽 可以添加Preview Asset预览资产 方便查看 2 将Component组件绑定到骨骼中 新建一个StaticMesh 绑定组件到骨骼插槽 3
  • 如何学习C++

    转自 http blog csdn net yong2016 article details 9321837 看了这篇文章才知道自己最近太浮躁了 学做技术也是学做人 读者定位是两类人群 a 初学者 即将入手 C 语言 不知道如何开始 b 已
  • Tomcat 与 Nginx,Apache的区别

    Apache指的应该是Apache软件基金会下的一个项目 Apache HTTP Server Project Nginx同样也是一款开源的HTTP服务器软件 当然它也可以作为邮件代理服务器 通用的TCP代理服务器 Tomcat是Apach
  • 计算机分析学生表字段,巧用Excel数据透视表统计分析学生成绩

    巧用Excel数据透视表统计分析学生成绩 科技信息 IT论坛 SCIENCE TECHNOLOGYINFORMATION2010年第19期 巧用Excel数据透视表统计分析学生成绩 魏零 桂林航天工业高等专科学校计算机系 广西 桂林 541
  • Coverless Image Steganography Based on Generative Adversarial Network

    基于生成对抗网络的无载体图像隐写技术 摘要 传统图像隐写技术 修改 嵌入到载体图像来传输秘密信息 gt 隐写工具很容易检测到载体图像的失真 gt 秘密信息的泄露 无载体图像隐写技术 不修改载体图像就可以隐藏秘密信息 但存在容量低 质量差等问
  • 操作系统地址重定位相关练习题

    一 问题描述 某虚拟存储器的用户空间共有32个页面 每页1KB 主存16KB 假定某时刻系统为用户的第0 1 2 3页分配的物理块号为5 10 4 7 而该用户作业的长度为6页 试将十六进制的虚拟地址0A5C 103C转换成物理地址 二 正
  • ★【动态规划】【线段树】基站选址

    问题描述 有N个村庄坐落在一条直线上 第i i gt 1 个村庄距离第1个村庄的距离为Di 需要在这些村庄中建立不超过K个通讯基站 在第i个村庄建立基站的费用为Ci 如果在距离第i个村庄不超过Si的范围内建立了一个通讯基站 那么就成它被覆盖
  • 华为od机考题目-IPv4地址转换成为整数

    while 1 try nums list map int input split if len nums 4 有效ip 为 4段
  • Leetcode No. 136. Single Number

    Given an array of integers every element appears twice except for one Find that single one Note Your algorithm should ha
  • 面试官:你对Kafka了解吗?这41个问题你能答出几个

    一 请说明什么是Apache Kafka Apache Kafka是由Apache开发的一种发布订阅消息系统 它是一个分布式的 分区的和重复的日志服务 二 请说明什么是传统的消息传递方法 传统的消息传递方法包括两种 排队 在队列中 一组用户