一問Kafka就心慌?我卻憑著這份《Kafka原始碼實戰》碾壓面試官!
Kafka是一個高度可擴展的訊息系統,它在LinkedIn的中央資料庫管理中扮演著十分重要的角色,因其可水平擴展和高吞吐率而被廣泛使用,現在已經被多家不同型別的公司作為多種型別的資料管道和訊息系統,
那么,如何學習Kafka原始碼??
我覺得最高效的方式就是去讀最核心的原始碼,先看一張 Kafka結構圖 以及 Kafka 原始碼全景圖

梳理一下關于 Kafka 框架,找到學習的重點,

其次,我要說的就是一個Kafka原始碼決議的檔案——《Kafka原始碼決議與實戰》
篇幅原因,這邊只能大概的介紹一下,有需要下載原件的老鐵可直接在這【FreeDownload】
前5章分別是:Kafka簡介、Kafka的架構、Broker概述、Broker的基本模塊、Broker的控制管理模塊

-
第1章 Kafka簡介:介紹Kafka誕生的背景、Kafka在LinkedIn內部的應用、Kafka 的主要設計目標以及為什么使用訊息系統
-
第2章 Kafka的架構:介紹Kafka的基本組成、拓撲結構及其內部的通信協議
-
第3章 Broker概述:描述Kafka集群組成的基本元素Broker Server的啟動以及內部的模塊組成
-
第4章 Broker的基本模塊:描述Broker Server內部的九大基本模塊: SocketServer 、KafkaRequestHandlerPool 、LogManager、ReplicaManager 、OffsetManager、KafkaScheduler. KafkaApis 、KafkaHalthcheck和TopicConfigManager
-
第5章 Broker的控制管理模塊:介紹BrokerServer的控制管理模塊KafkaController,這個模塊負責整個Kafka集群的管理,例如:Topic的新建和洗掉.磁區狀態和副本狀態的轉換、集群的負載均衡管理等

后5章分別是 Topic的管理工具、生產者、消費者、Kafka的典型應用、Kafka的綜合案例

-
第6章 Topic的管理工具 :介紹三個維護腳本: kafka-topics.sh 、kafka-reassign-partitions.sh 和kafka preferredreplica-election.sh,它們分別涉及Topic的生命周期管理、Topic磁區的重分配和磁區首選副本的選擇,
-
第7章 生產者 :從設計原則、示例代碼、模塊組成和發送模式四個部分介紹有關訊息生產者的相關知識,從設計原則至客戶端編程,從客戶端編程到內部實作原理,由淺人深,循序漸進地講解,
-
第8章 消費者 :分別介紹兩種消費者:簡單消費者和高級消費者,針對每種消費者都將依次從設計原則、消費者流程、示例代碼以及原理決議四個部分介紹消費者的相關知識,
-
第9章 Kafka的典型應用 :介紹Kafka與典型大資料系統的集成,包括: Kafka和Storm的集成、Kafka 和ELK的集成、Kafka和Hadoop的集成以及Kafka和Spark的集成,
-
第10章 Kafka的綜合案例 :用綜合實體描述了Kafka的應用,案例描述Kafka作為資料總線在安防整體解決方案中的作用,通過車輛人臉圖片資料的入庫、視頻資料的入庫、資料延時的監控、資料質量的監控、布控統計和容災備份6個業務,簡要闡述內部的實作原理,

再者就是關于Kafka的面試
Kafka面試專題決議
-
Kafka 的設計時什么樣的呢?
-
資料傳輸的事物定義有哪三種?
-
Kafka 判斷一個節點是否還活著有那兩個條件?
-
producer 是否直接將資料發送到 broker 的 leader(主節點)?
-
Kafa consumer 是否可以消費指定磁區訊息?
-
Kafka 訊息是采用 Pull 模式,還是 Push 模式?
-
Kafka 存盤在硬碟上的訊息格式是什么?
-
Kafka 高效檔案存盤設計特點
-
Kafka 與傳統訊息系統之間有三個關鍵區別
-
Kafka 創建 Topic 時如何將磁區放置到不同的 Broker 中
-
Kafka 新建的磁區會在哪個目錄下創建
-
partition 的資料如何保存到硬碟
-
kafka 的 ack 機制
-
Kafka 的消費者如何消費資料
-
消費者負載均衡策略
-
資料有序
-
kafaka 生產資料時資料的分組策略

復習學習必備44個Kafka知識點(基礎+進階+高級)
Kafka基礎篇知識點(17)

Kafka進階篇知識點(15)

Kafka高級篇知識點(12)

44個Kafka知識點(基礎+進階+高級)決議如下

由于篇幅有限,小編已將上面介紹的《Kafka原始碼決議與實戰》、Kafka面試專題決議、復習學習必備44個Kafka知識點(基礎+進階+高級)都整理成冊,全部都是PDF檔案,并且有需求即可分享
分布式:反向代理/Redis/中間件/訊息+Kafka+Nginx++ZooKeeper+RabbitMQ+ActiveMQ+MongoDB+Redis:(地址)https://docs.qq.com/doc/DVlp5TXJVTXBUbUlu
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/189616.html
標籤:其他
下一篇:android – AIDL中的Parcelize注釋:不兼容的型別:無法將物件轉換為MyCustomObject
