Apache Kafka - 如何实现可靠的数据传递

news/2024/6/18 6:31:19 标签: kafka, java, 分布式

文章目录

  • 可靠的数据传递
  • 导图

在这里插入图片描述


可靠的数据传递

Kafka 通过以下几个方面实现可靠的数据传递:

  1. 分区副本 - Kafka 的分区有多个副本,如果某个副本失效,其他副本可以继续服务。
  2. 生产者重试 - 生产者在发送消息失败时会自动重试,一直到成功发送或者达到最大重试次数。
  3. 批量确认 - 生产者会批量发送消息,并批量接收确认,避免过于频繁的网络交互。
  4. 消费者偏移量 - 消费者会追踪并定期提交消费偏移量,以指示已经消费到的位置,从而实现重试时不重复消费等功能。
  5. 最小批量 - Broker 会将小的消息批量组合,以减少网络传输次数,提高效率。
  6. 校验和 - Kafka 支持消息级别的 CRC32 校验和以检测消息内容错误。
  7. 顺序写磁盘 - Kafka 会将消息顺序写到磁盘,避免磁盘寻址重复读写,提高性能。
  8. 页缓存 - Kafka 利用页面缓存来减少磁盘 IO 次数,提高读写性能。
  9. 混合存储 - Kafka 支持内存与磁盘混合存储消息,热门消息在内存中,冷消息在磁盘上。
  10. 高可用 - Kafka 支持多副本、自动恢复机制与消息重试等功能提高可用性。
  11. 时间戳 - Kafka 在消息中加入时间戳,用于消息顺序与延迟计算。
  12. 生产者消息编号 - Kafka 生产者里的消息分配连续的编号,用于快速定位断点。

所以,Kafka 通过分区多副本、生产者消费者重试机制、批量操作与校验、顺序写磁盘与页缓存、混合存储、高可用设计以及时间戳与消息编号等手段,实现了高吞吐、低延迟与高可靠的数据传输。这也体现了 Kafka 的设计目标与关键机制


导图

在这里插入图片描述


http://www.niftyadmin.cn/n/369342.html

相关文章

掌握成本核算的关键指南:《SAP Press - Introducing Product Costing with SAP S4HANA》

概览: 本书从介绍SAP S4HANA系统的基础知识开始,然后重点关注产品成本核算模块。读者将了解产品成本核算的重要性以及它在企业中的应用。通过清晰的解释、实例和图表,本书详细介绍了成本构成、成本对象、成本计算方法等关键概念。此外&#x…

源码角度分析多线程并发情况下数据异常回滚方案

一、 多线程并发情况下数据异常回滚解决方案 在需要多个没有前后顺序的数据操作情况下,一般我们可以选择使用并发的形式去操作,以提高处理的速度,但并发情况下,我们使用 Transactional 还能解决事务回滚问题吗。 例如有下面表结…

Linux 用户与组群管理

1 用户账户与群组概念 Linux操作系统是多用户多任务的操作系统,允许多个用户同时登录到系统,使 用系统资源。用户账户是用户的身份标识。用户通过用户账户可以登录到系统, 并且访问已经被授权的资源。系统依据账户来区分属于每个用户的文件…

软件测试理论----接口测试中restful接口状态码规范

一、restful接口状态码总体分类 类别描述1xx:信息通信传输协议信息2xx:成功表示客户端的请求已成功接受3xx:重定向表示客户端必须执行一些其他操作才能完成其请求4xx:客户端错误此类错误状态码指向客户端5xx:服务器错…

输出格式说明符%u

c语言中的%u是输入输出格式说明符,表示按unsigned int格式输入或输出数据。 %d 有符号10进制整数 %i 有符号10进制整数 %o 无符号8进制整数 %u 无符号10进制整数 %x 无符号的16进制数字,并以小写abcdef表示 %X 无符号的16进制数字,并以大…

(详解)vue中实现主题切换的三种方式

目录 一、背景 二、实现思路 方法1:定义全局的CSS变量 方法2:切换已定义好的css文件 方法3:切换顶级CSS类名 (需使用css处理器,如sass、less等) 一、背景 在我们开发中我们会遇到像是需要切换程序风格、主题切换啦这种应用场景。 参考大佬…

《数据库应用系统实践》------ 校友会信息系统

系列文章 《数据库应用系统实践》------ 校友会信息系统 文章目录 系列文章一、需求分析1、系统背景2、 系统功能结构(需包含功能结构框图和模块说明)3.系统功能简介 二、概念模型设计1.基本要素(符号介绍说明&#x…

Doris----Rollup表分析及案例实现

ROLLUP 在多维分析中是“上卷”的意思,即将数据按某种指定的粒度进行进一步聚合。 之前的聚合模型: 用户id数据插入时间城市年龄性别最后一次访问的时间该用户的总消费额该用户的最大停留时长该用户的最小停留时长100002017/10/2北京1002017/10/02 08:00:00651521…