Kafka常见问题学习路径源码阅读小结 | 写在Kafka3.0发布之际

本文主要是介绍Kafka常见问题学习路径源码阅读小结 | 写在Kafka3.0发布之际,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

严格来说,这篇文章也不是今天写的。是之前断断续续写在了几篇文章中。

2021年9月21日,随着Kafka3.0的发布,Kafka在「分布式流处理平台」这个目标上的努力进一步得到加强!Kafka不满足于「消息引擎」的定位,正式基于这样的定位,Kafka 社区于 0.10.0.0 版本正式推出了流处理组件 Kafka Streams,也正是从这个版本开始,Kafka 正式"变身"为分布式的流处理平台,而不仅仅是消息引擎系统了。

Kafka不仅是消息引擎系统,也是分布式流处理平台。

在某些场景,可以弃用Flink、Spark这样的计算引擎。借助Kafka Stream轻松实现数据处理。

那么我们在学习Kafka的时候应该从哪些方面入手?

我们在学习Kafka的时候,到底在学习什么?

我在这篇《我们在学习Kafka的时候,到底在学习什么?》这篇文章中总结了整体学习Kafka的方法和路径。

分别从背景核心概念核心原理源码阅读实际应用等。方面详细的讲解了学习路径和方法。各位读者需要根据自己的实际情况针对性的去学习其中的某一个部分。

这部分特别强调了一下Kafka Stream这个模块。正是Kafka Stream的出现使得Kafka的定位从原来的分布式、分区、有备份的提交日志服务变成了完整的分布式消息引擎和流式计算处理引擎。

Kafka源码阅读的一些小提示

如果你整体上对Kafka有一定的了解,并且简单的应用过Kafka。那么就有一个不可忽视的环节:源码阅读

Kafka的代码总量有50多万行,我们不太可能通盘阅读,只需要阅读其中的重要部分即可。在《Kafka源码阅读的一些小提示》中,参考网上的资料和自己阅读过的部分源码,给出了一个比较完全的源码阅读大纲。

f6d240fd4fcf2d93167077565c62d674.png

供大家参考。

Kafka常见错误小集合

最后这个部分,是一些常见的错误合集。供大家参考:

  • 《30个Kafka常见错误小集合》

Kafka3.0来袭

最后这个部分,是Kafka3.0中的一些重要更新。

Apache Kafka 3.0是一个涉及多方面的大版本,该版本引入了各种新功能、突破性的API更改以及对KRaft的改进——Apache Kafka的内置共识机制将取代Apache ZooKeeper。

虽然KRaft尚未被推荐用于生产(已知差距列表),但我们对KRaft元数据和API进行了许多改进。Exactly-once和分区重新分配支持值得强调。我们鼓励您查看KRaft的新功能并在开发环境中试用它。

从Apache Kafka 3.0开始,生产者默认启用最强的交付保证 (acks=all, enable.idempotence=true)。这意味着用户现在默认获得排序和持久性。

Kafka Connect任务重启增强、KStreams基于时间戳同步的改进以及 MirrorMaker2更灵活的配置选项。

此外,Kafka3.0中弃用了Java8的支持,需要大家升级JDK版本。

更多的详细信息可以网上搜搜。


cea7a95992f462cd500ab9117b8295eb.png

    八千里路云和月 | 从零到大数据专家学习路径指南

    我们在学习Flink的时候,到底在学习什么?

    193篇文章暴揍Flink,这个合集你需要关注一下

    Flink生产环境TOP难题与优化,阿里巴巴藏经阁YYDS

    Flink CDC我吃定了耶稣也留不住他!| Flink CDC线上问题小盘点

    我们在学习Spark的时候,到底在学习什么?

    在所有Spark模块中,我愿称SparkSQL为最强!

    硬刚Hive | 4万字基础调优面试小总结

    数据治理方法论和实践小百科全书

    标签体系下的用户画像建设小指南

    4万字长文 | ClickHouse基础&实践&调优全视角解析

    【面试&个人成长】2021年过半,社招和校招的经验之谈

    大数据方向另一个十年开启 |《硬刚系列》第一版完结

    我写过的关于成长/面试/职场进阶的文章

    当我们在学习Hive的时候在学习什么?「硬刚Hive续集」

你好,我是王知无,一个大数据领域的硬核原创作者。

做过后端架构、数据中间件、数据平台&架构&、算法工程化。

专注大数据领域实时动态&技术提升&个人成长&职场进阶,欢迎关注。

这篇关于Kafka常见问题学习路径源码阅读小结 | 写在Kafka3.0发布之际的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1142627

相关文章

Java对异常的认识与异常的处理小结

《Java对异常的认识与异常的处理小结》Java程序在运行时可能出现的错误或非正常情况称为异常,下面给大家介绍Java对异常的认识与异常的处理,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参... 目录一、认识异常与异常类型。二、异常的处理三、总结 一、认识异常与异常类型。(1)简单定义-什么是

SpringBoot项目配置logback-spring.xml屏蔽特定路径的日志

《SpringBoot项目配置logback-spring.xml屏蔽特定路径的日志》在SpringBoot项目中,使用logback-spring.xml配置屏蔽特定路径的日志有两种常用方式,文中的... 目录方案一:基础配置(直接关闭目标路径日志)方案二:结合 Spring Profile 按环境屏蔽关

Go学习记录之runtime包深入解析

《Go学习记录之runtime包深入解析》Go语言runtime包管理运行时环境,涵盖goroutine调度、内存分配、垃圾回收、类型信息等核心功能,:本文主要介绍Go学习记录之runtime包的... 目录前言:一、runtime包内容学习1、作用:① Goroutine和并发控制:② 垃圾回收:③ 栈和

Swagger在java中的运用及常见问题解决

《Swagger在java中的运用及常见问题解决》Swagger插件是一款深受Java开发者喜爱的工具,它在前后端分离的开发模式下发挥着重要作用,:本文主要介绍Swagger在java中的运用及常... 目录前言1. Swagger 的主要功能1.1 交互式 API 文档1.2 客户端 SDK 生成1.3

java连接opcua的常见问题及解决方法

《java连接opcua的常见问题及解决方法》本文将使用EclipseMilo作为示例库,演示如何在Java中使用匿名、用户名密码以及证书加密三种方式连接到OPCUA服务器,若需要使用其他SDK,原理... 目录一、前言二、准备工作三、匿名方式连接3.1 匿名方式简介3.2 示例代码四、用户名密码方式连接4

VSCode设置python SDK路径的实现步骤

《VSCode设置pythonSDK路径的实现步骤》本文主要介绍了VSCode设置pythonSDK路径的实现步骤,包括命令面板切换、settings.json配置、环境变量及虚拟环境处理,具有一定... 目录一、通过命令面板快速切换(推荐方法)二、通过 settings.json 配置(项目级/全局)三、

Android学习总结之Java和kotlin区别超详细分析

《Android学习总结之Java和kotlin区别超详细分析》Java和Kotlin都是用于Android开发的编程语言,它们各自具有独特的特点和优势,:本文主要介绍Android学习总结之Ja... 目录一、空安全机制真题 1:Kotlin 如何解决 Java 的 NullPointerExceptio

使用Python和Matplotlib实现可视化字体轮廓(从路径数据到矢量图形)

《使用Python和Matplotlib实现可视化字体轮廓(从路径数据到矢量图形)》字体设计和矢量图形处理是编程中一个有趣且实用的领域,通过Python的matplotlib库,我们可以轻松将字体轮廓... 目录背景知识字体轮廓的表示实现步骤1. 安装依赖库2. 准备数据3. 解析路径指令4. 绘制图形关键

在Spring Boot中实现HTTPS加密通信及常见问题排查

《在SpringBoot中实现HTTPS加密通信及常见问题排查》HTTPS是HTTP的安全版本,通过SSL/TLS协议为通讯提供加密、身份验证和数据完整性保护,下面通过本文给大家介绍在SpringB... 目录一、HTTPS核心原理1.加密流程概述2.加密技术组合二、证书体系详解1、证书类型对比2. 证书获

Python函数返回多个值的多种方法小结

《Python函数返回多个值的多种方法小结》在Python中,函数通常用于封装一段代码,使其可以重复调用,有时,我们希望一个函数能够返回多个值,Python提供了几种不同的方法来实现这一点,需要的朋友... 目录一、使用元组(Tuple):二、使用列表(list)三、使用字典(Dictionary)四、 使