当前位置: 首页 > news >正文

Kafka常见面试题

如何防止消息丢失?

发送端:ack设置为-1或副本数,默认副本全部同步才会认为发送成功

接收端:对接收到的数据进行备份,定期进行检查对执行失败的数据重新执行;选择手动提交offset,对执行失败的数据不提交offset。

如何防止消息的重复消费?

在消费者端对数据进行幂等校验,禁止一定时间内出现相同含义的数据;或添加分布式锁。

如何做到顺序消费?

对获取到的数据进行再次排序

如何解决消息积压的问题?

1.添加新的消费者

2.在消费者中添加新的线程

3.验证消息的时效性,丢弃过期数据

如何实现延迟队列?

每隔一段时间消费数据,将当前时间与数据产生时间进行对比,小于延迟时间的不提交,并重新进入等待。

Kafka如何做到单机上百万的高吞吐量呢?

页面缓存技术:将数据缓存到系统的cache中,在刷新到磁盘当中

磁盘顺序写:按顺序写入磁盘

零拷贝技术:在cache中未查到数据,从磁盘获取加载到cache中后,不copy到Kafka进程中,而是由操作系统直接发送到网卡。

http://www.lryc.cn/news/251032.html

相关文章:

  • rman SBT_TAPE NFS disk 模拟NBU带库 FRA
  • 物理世界中的等距3D对抗样本
  • 解决vue3项目打包发布到服务器后访问页面显示空白问题
  • 什么是SMTP服务器?如何配置?
  • el-tabel实现拖拽排序
  • 设计模式-结构型模式之适配器设计模式
  • Android 中的权限
  • 【java智慧工地源码】智慧工地物联网云平台,实现现场各类工况数据采集、存储、分析与应用
  • oracle 19c rac 安装手册
  • sqlMap
  • 蓝桥杯每日一题2023.12.2
  • 【计算机网络学习之路】序列化,反序列化和初识协议
  • 亚马逊云科技推出新一代自研芯片
  • VIT总结
  • C++11——initializer_list
  • 数学字体 Mathematical fonts
  • Python简单模拟蓝牙车钥匙协议
  • 【Python3】【力扣题】383. 赎金信
  • 外包搞了6年,技术退步明显......
  • uni-app x生成的安卓包,安装时,提示不兼容。解决方案
  • Screenshot To Code
  • SpringBoot 是如何启动一个内置的Tomcat
  • 《功能磁共振多变量模式分析中空间分辨率对解码精度的影响》论文阅读
  • pygame实现贪吃蛇小游戏
  • 反序列化漏洞(二)
  • 【开箱即用】前后端同时开源!周末和AI用Go语言共同研发了一款笔记留言小程序!
  • java对xml压缩
  • GoLang切片
  • 前端入门(四)Ajax、Promise异步、Axios通信、vue-router路由、组件库
  • 正则表达式回溯陷阱