Kafka是一種高吞吐量的分佈式發佈訂閱消息系統,它可以處理消費者規模的網站中的所有動作流數據。 這種動作(網頁瀏覽,搜索和其他用戶的行動)是在現代網絡上的許多社會功能的一個關鍵因素。 這些數據通常是由於吞吐量的要求而通過處理日誌和日誌聚合來解決。 對於像Hadoop的一樣的日誌數據和離線分析系統,但又要求實時處理的限制,這是一個可行的解決方案。Kafka的目的是通過Hadoop的並行加載機制來統一線上和離線的消息處理,也是爲了通過集羣來提供實時的消息。
而這幾年,大數據發展迅猛,Kakfa 憑藉高可靠、高吞吐、高可用、可伸縮幾大特性,成爲數據管道技術的首選,也成了面試官的最愛。
前陣子,有幾個朋友跟我吐槽面試,被Kakfa給問懵逼了,有點可惜呀,就這麼pass了。細思極恐,想想以後要是我直面面試官,是否也會被瘋狂轟炸??所以這幾天趁着沒啥事兒,四處蒐集整理各大企業招聘面試時最愛問的Kakfa問題,分爲基礎篇+進階篇+高級篇,一步一個腳印慢慢深入,拿下Kakfa!
01 Kakfa學習思維大綱總結圖
先來看份xmind畫的一個Kakfa學習思維大綱總結圖,由於知識點較多,每個節點都有相應的解析,內容太多,分步截圖展示(注意:若是需要原稿Kakfa學習思維大綱總結圖以及下面的Kakfa面試瘋狂轟炸44問+解析[原稿],<點我> 獲取免費下載方式!!)
1.1 介紹+Kakfa獨特設計
1.2 Kakfa架構
1.3 Kafka如何搭建及創建topic、發送消息、消費消息?
1.4 環境搭配+測試
1.5 Kakfa開發環境搭建+學習總結來源
02 Kakfa面試瘋狂轟炸44問
2.1 Kakfa基礎篇
1.Kafka的用途有哪些?使用場景如何?
2.Kafka中的ISR、AR又代表什麼?ISR的伸縮又指什麼
3.Kafka中的HW、LEO、LSO、LW等分別代表什麼?
4.Kafka中是怎麼體現消息順序性的?
5.Kafka中的分區器、序列化器、攔截器是否瞭解?它們之間的處理順序是什麼?
6.Kafka生產者客戶端的整體結構是什麼樣子的?
7.Kafka生產者客戶端中使用了幾個線程來處理?分別是什麼?
8.Kafka的舊版Scala的消費者客戶端的設計有什麼缺陷?
9.“消費組中的消費者個數如果超過topic的分區,那麼就會有消費者消費不到數據”這句話是否正確?如果正確,那麼有沒有什麼hack的手段?
10.有哪些情形會造成重複消費?
11.那些情景下會造成消息漏消費?
12.KafkaConsumer是非線程安全的,那麼怎麼樣實現多線程消費?
13.簡述消費者與消費組之間的關係
14.當你使用kafka-topics.sh創建(刪除)了一個topic之後,Kafka背後會執行什麼邏輯?
15.topic的分區數可不可以增加?如果可以怎麼增加?如果不可以,那又是爲什麼?
16.topic的分區數可不可以減少?如果可以怎麼減少?如果不可以,那又是爲什麼?
17.創建topic時如何選擇合適的分區數?
2.2 Kakfa進階篇
1.Kafka目前有哪些內部topic,它們都有什麼特徵?各自的作用又是什麼?
2.優先副本是什麼?它有什麼特殊的作用?
3.Kafka有哪幾處地方有分區分配的概念?簡述大致的過程及原理
4.簡述Kafka的日誌目錄結構
5.Kafka中有哪些索引文件?
6.如果我指定了一個offset,Kafka怎麼查找到對應的消息?
7.如果我指定了一個timestamp,Kafka怎麼查找到對應的消息?
8.聊一聊你對Kafka的Log Retention的理解
9.聊一聊你對Kafka的Log Compaction的理解
10.聊一聊你對Kafka底層存儲的理解
11.聊一聊Kafka的延時操作的原理
12聊一聊Kafka控制器的作用
13.Kafka的舊版Scala的消費者客戶端的設計有什麼缺陷?
14.消費再均衡的原理是什麼?(提示:消費者協調器和消費組協調器)
15.Kafka中的冪等是怎麼實現的?
2.3 Kakfa高級篇
1.Kafka中的事務是怎麼實現的?
2.失效副本是指什麼?有哪些應對措施?
3.多副本下,各個副本中的HW和LEO的演變過程
4.Kafka在可靠性方面做了哪些改進?(HW, LeaderEpoch)
5.爲什麼Kafka不支持讀寫分離?
6.Kafka中的延遲隊列怎麼實現
7.Kafka中怎麼實現死信隊列和重試隊列?
8.Kafka中怎麼做消息審計?
9.Kafka中怎麼做消息軌跡?
10.怎麼計算Lag?(注意read_uncommitted和read_committed狀態下的不同)
11.Kafka有哪些指標需要着重關注?
12.Kafka的那些設計讓它有如此高的性能?
03 撒花結束
其實關於Kafka,能問的問題實在是太多了,扒了幾天,最終篩選出44問:基礎篇17問、進階篇15問、高級篇12問,個個直戳痛點,不知道如果你不着急看答案,又能答出幾個呢?
不急不急,如果小編收集整理的Kakfa學習思維大綱總結圖以及Kakfa面試瘋狂轟炸44問+解析正是你所需要的,可以免費分享,點擊【“Kakfa”】!!