面試官最愛問的Kafka,基礎+進階+高階,44問瘋狂轟炸!
面試官最愛問的Kakfa,基礎+進階+高階,44問瘋狂轟炸!
Kafka是一種高吞吐量的分散式釋出訂閱訊息系統,它可以處理消費者規模的網站中的所有動作流資料。 這種動作(網頁瀏覽,搜尋和其他使用者的行動)是在現代網路上的許多社會功能的一個關鍵因素。 這些資料通常是由於吞吐量的要求而透過處理日誌和日誌聚合來解決。 對於像Hadoop的一樣的日誌資料和離線分析系統,但又要求實時處理的限制,這是一個可行的解決方案。Kafka的目的是透過Hadoop的並行載入機制來統一線上和離線的訊息處理,也是為了透過叢集來提供實時的訊息。
而這幾年,大資料發展迅猛,Kakfa 憑藉高可靠、高吞吐、高可用、可伸縮幾大特性,成為資料管道技術的首選,也成了面試官的最愛。
前陣子,有幾個朋友跟我吐槽面試,被Kakfa給問懵逼了,有點可惜呀,就這麼pass了。細思極恐,想想以後要是我直面面試官,是否也會被瘋狂轟炸??所以這幾天趁著沒啥事兒,四處蒐集整理各大企業招聘面試時最愛問的Kakfa問題,分為基礎篇+進階篇+高階篇,一步一個腳印慢慢深入,拿下kafka !
如需原件分享,找微u;mf97532
01 Kakfa面試瘋狂轟炸44問
1.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時如何選擇合適的分割槽數?
1.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中的冪等是怎麼實現的?
1.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的那些設計讓它有如此高的效能?
02 總結:繪上一張Kakfa架構思維大綱腦圖(xmind)
其實關於Kafka,能問的問題實在是太多了,扒了幾天,最終篩選出44問:基礎篇17問、進階篇15問、高階篇12問,個個直戳痛點,不知道如果你不著急看答案,又能答出幾個呢?
若是對Kafka的知識還回憶不起來,不妨先看我手繪的知識總結腦圖(xmind不能上傳,文章裡用的是圖片版)進行整體架構的梳理,然後在來答一答我們們的44問(放心,答案解析已整理,解析+腦圖+更多筆記等皆可分享)。
梳理了知識,刷完了面試,如若你還想進一步的深入學習解讀kafka以及原始碼,那麼接下來的這份《手寫“kafka”》將會是個不錯的選擇。
-
Kafka入門
-
為什麼選擇Kafka
-
Kafka的安裝、管理和配置
-
Kafka的叢集
-
第一個Kafka程式
-
Kafka的生產者
-
Kafka的消費者
-
深入理解Kafka
-
可靠的資料傳遞
-
Spring和Kafka的整合
-
SpringBoot和Kafka的整合
-
Kafka實戰之削峰填谷
-
資料管道和流式處理(瞭解即可)
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/70000181/viewspace-2775533/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Java面試官最愛問的volatile關鍵字Java面試
- Java 進階面試問題必備Java面試
- 【狂神說】Docker(三) - 高階進階Docker
- 面試 HTTP ,99% 的面試官都愛問這些問題面試HTTP
- 2019 JS經典面試題(基礎+高階)JS面試題
- 面試高階前端工程師必問之流-stream面試前端工程師
- 2019 JavaScript面試題詳解(基礎+進階)JavaScript面試題
- 面試官瘋狂問我聯表查詢怎麼辦? 愣著幹嘛?進來白嫖啊!面試
- 【對線面試官】Kafka基礎入門面試Kafka
- 面試官瘋狂問我:char和varchar的區別 怎麼辦?愣著幹嘛?進來白嫖啊!面試
- 詢問面試官的面試問題面試
- 面試官竟然瘋狂問我資料庫的組提交?怎麼辦?愣著幹嘛?進來白嫖呀!面試資料庫
- 如何準備Java的高階技術面試,java基礎面試筆試題Java面試筆試
- 面試之 Redis 基礎、高階特性與效能調優面試Redis
- 《全面戰爭:三國》遭差評轟炸,中國玩家為何如此瘋狂?
- Python的基礎進階Python
- 《大前端進階 Node.js》系列 必知必會必問(面試高頻)前端Node.js面試
- 長沙Java培訓:Java基礎通往高階進階篇Java
- Java高階面試-面經Java面試
- js基礎進階–promise和setTimeout執行順序的問題JSPromise
- 詳解高階前端面試常問的EventLoop前端面試OOP
- 問問那些變態的面試官面試
- 2019年面試官最喜歡問的28道ZooKeeper面試題面試題
- python面試中較常問及的知識點梳理---高階特性Python面試
- 面試官讓我回去把基礎搞紮實,含淚狂刷Android基礎面試118題面試Android
- Java 面試官最喜歡問的關鍵字 volatileJava面試
- 面試官問:JS的this指向面試JS
- 被難倒了! 針對高階前端的8個級JavaScript面試問題前端JavaScript面試
- 面試java高階工程師、專案經理等的常見問題面試Java工程師
- 阿里面試官最喜歡問的21個HashMap面試題阿里HashMap面試題
- 求職Python開發,面試官最喜歡問的幾個問題求職Python面試
- 前端開發最容易出錯的基礎知識,面試常問!前端面試
- 《Kafka筆記》3、Kafka高階APIKafka筆記API
- 99面試常問:中高階開發面試必問的Redis,看這篇就夠了!面試Redis
- 美團面試,問的都是基礎啊!面試
- 面試官問:JS的繼承面試JS繼承
- 面試官問:Kafka 會不會丟訊息?怎麼處理的?面試Kafka
- javascript高階基礎的深入總結JavaScript