1. 程式人生 > 其它 >Java自學!阿里大牛親手操刀微服務架構實戰

Java自學!阿里大牛親手操刀微服務架構實戰

Java自學!阿里大牛親手操刀微服務架構實戰

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問,個個直戳痛點,不知道如果你不著急看答案,又能答出幾個呢?

最後

現在正是金三銀四的春招高潮,前陣子小編一直在搭建自己的網站,並整理了全套的【一線網際網路大廠Java核心面試題庫+解析】:包括Java基礎、異常、集合、併發程式設計、JVM、Spring全家桶、MyBatis、Redis、資料庫、中介軟體MQ、Dubbo、Linux、Tomcat、ZooKeeper、Netty等等...都已全部整理上傳在我的騰訊文件上:點選這裡前往傳送門並會持續更新...可以star一下。