上週客串了一下面試官,在這裏就簡單記錄一下期間我問到的一些關於 Kafka 的面試題目,這些都是我平時在學習 Kafka 的一些總結要點。面試
問這個問題主要是想知道面試者對 Kafka 的總體認識如何,可以大體瞭解清楚面試者對 Kafka 的相關概念的熟悉程度,好比消息、topic、partition、replica、offset、重平衡、leader/follower、ISR 等等。後端
多分區、batch send、kafka Reator 網絡模型、pagecache、sendfile 零拷貝、數據壓縮。安全
sender 線程工做機制、ByteBuffer 緩衝區的做用等等:網絡
生產端調整 batch.size、linger.ms 參數,以及主題分區數合理分配等。session
理解消息交付語義:多線程
最多一次(atmostonce):消息可能丟失也可能被處理,但最多隻會被處理一次;併發
至少一次(atleastonce):消息不會丟失,但可能被處理屢次;源碼分析
精確一次(exactlyonce):消息被處理且只會被處理一次。性能
倘若消費者在消費前提交位移,那麼就是「最多一次」,若在消費後提交位移,那麼就是「最少一次」,若是可以保證消費和提交位移同在一個事務中執行,就可保證「精確一次」。__consumer_offsets
的一些理解。學習
消費組成員變動、主題數量變動、訂閱信息變動;session.timeout.ms、max.poll.interval.ms、hearbeat.interval.ms;
相關文章:Kafka重平衡機制
RAR、OAR、AR、RAR-OAR、OAR-RAR 相關概念,
相關文章:記一次 Kafka 線上擴容、Kafka 分區重分配源碼分析
在 broker 掛掉以後,分區 leader 會變動,長此以往就會變得不均衡,Kafka 默認序號最小的副本爲 Preferred leader,在 broker 重啓回來後,Kafka 會從新調整分區的 Preferred leader 成爲 leader,Preferred leader 選舉分爲手動選舉和自動選舉,涉及參數 auto.leader.rebalance.enable,還有個默認容許 10% 不均衡策略等等。
相關文章:Kafka ISR 副本同步機制
相關文章:圖解:Kafka 水印備份機制
相關文章:圖解:Kafka 水印備份機制
更新集羣元數據信息、建立主題、刪除主題、分區重分配、preferred leader 副本選舉、主題分區擴展、broker 加入集羣、broker 崩潰、受控關閉、controller leader 選舉。
每一個分區擁有單獨的日誌(partition log)、順序寫、到必定大小分紅日誌段文件(log segment file)、每一個 log 文件對應一個索引文件(.index .timeindex)等等。
個人理解:
更多精彩文章請關注做者維護的公衆號「後端進階」,這是一個專一後端相關技術的公衆號。
關注公衆號並回復「後端」免費領取後端相關電子書籍。
歡迎分享,轉載請保留出處。