Kafka最初於2011年在LinkedIn開發,自那時起經歷了很多改進。如今它是一個完整的平臺,擁有一個具有巨大吞吐量(數百萬/秒)的訊息匯流排,並對同時透過它的資料使用即時流處理。
今天分享的這份資料,包括121頁的Kafka官方中文文件和Kafka常見面試題,由於內容過多,在此只以截圖展示部分內容,詳細完整版的文件領取方式請見文末。

這份文件的價值
第一部分:Kafka基礎入門
這一部分是學習Kafka的準備階段,Kafka的發展,使用案例,下載及歷史版本,都在這一部分進行了詳細的描述。

第二部分:APIS
kafka包括五個核心APIS,在這一部分中分別對其進行了詳解。
1. Producer API允許應用程式將資料流傳送到Kafka叢集中的主題。
2. Consumer API允許應用程式從Kafka叢集中的主題讀取資料流。
3. Streams API允許將輸入主題中的資料流轉換為輸出主題。
4. Connect API允許實現將資料不斷從某些源系統或應用程式中輸入Kafka的聯結器,或從Kafka輸入某些接收器系統或應用程式。
5. AdminClient API允許管理和檢查主題,代理和其他Kafka物件。

第三部分:配置

第四部分:設計思想
這一部分介紹了Kafka的設計思想以及一些重要概念解析:生產者,備份,訊息分發策略,日誌壓縮······

第五部分:實現思路
第五部分承接第四部分的內容,對Kafka的實現思路進行了詳盡介紹。

第六部分:Kafka操作
接下來就進入了實操階段,基本原理,基礎概念瞭解清楚之後正式開始上手,這一部分的內容會比較多,是基於LinkedIn使用Kafka作為生產系統的一些使用經驗。基礎配置,硬體作業系統及監控,zookeeper等內容都需要在本章掌握。

第七部分:Kafka安全
Kafka具有特性,透過單獨使用或者⼀起使用這些特性,提高了Kafka叢集的安全性。

第八部分:Kafka聯結器
這一部分主要介紹了:Kafka Connect ——⼀款可擴充套件並且可靠地在 Apache Kafka 和其他系統之間進行資料傳輸的工具。
Kafka Connect 可以攝取資料庫資料或者收集應用程式的 metrics 儲存到 Kafka topics,使得資料可以用於低延遲的流處理。一個匯出的 job 可以將來自 Kafkatopic 的資料傳輸到二級儲存,用於系統查詢或者批次進行離線分析。

第九部分:Kafka Streams
Kafka Streams 是一個用於處理和分析儲存在 Kafka 系統中的資料的客戶端庫。它建立在重要的流處理概念上,如恰當地區分事件時間(event time)和處理時間(processing time),支援視窗操作(window),exactly-once 處理語義以及簡單高效的應用程式狀態管理。Kafka Streams 的入門門檻很低。我們可以在單節點環境上快速實現一個小規模的驗證性的程式,只要程式能在多節點的叢集環境成功執行即可部署到高負載的生產環境。Kafka Streams 透過利用Kafka 的並行模型實現對相同應用程式的多個例項的負載平衡,這對於使用者來說是透明的。
此外,還為大家準備了一份Kafka面試題(基礎+進階+高階),共44個知識點!

基礎

進階

高階

如果有需要完整版的朋友可以掃碼加好友,備註“Kafka資料”即可全部打包帶走!

不要在公眾號後臺回覆!!
不要在公眾號後臺回覆!!