Kafka相關面試題及答案

Kafka中的ISR、AR又代表什麼

ISR:與leader保持同步的follower集合
AR:分區的所有副本

Kafka中的HW、LEO等分別代表什麼?

LEO:沒個副本的最後條消息的offset
HW:一個分區中所有副本最小的offset

Kafka中是怎麼體現消息順序性的?

每個分區內,每條消息都有一個offset,故只能保證分區內有序。

Kafka中的分區器、序列化器、攔截器是否瞭解?它們之間的處理順序是什麼?

攔截器 -> 序列化器 -> 分區器

Kafka生產者客戶端的整體結構是什麼樣子的?使用了幾個線程來

image.png

“消費組中的消費者個數如果超過topic的分區,那麼就會有消費者消費不到數據”這句話是否正確?

正確

消費者提交消費位移時提交的是當前消費到的最新消息的offset還是offset+1?

offset+1

有哪些情形會造成重複消費?

那些情景會造成消息漏消費?

先提交offset,後消費,有可能造成數據的重複

當你使用kafka-topics.sh創建(刪除)了一個topic之後,Kafka背後會執行什麼邏輯?

  1. 會在zookeeper中的/brokers/topics節點下創建一個新的topic節點,如:/brokers/topics/first
  2. 觸發Controller的監聽程序
  3. kafka Controller 負責topic的創建工作,並更新metadata cache

topic的分區數可不可以增加?如果可以怎麼增加?如果不可以,那又是爲什麼?

可以增加
bin/kafka-topics.sh --zookeeper localhost:2181/kafka --alter --topic topic-config --partitions 3

topic的分區數可不可以減少?如果可以怎麼減少?如果不可以,那又是爲什麼?

不可以減少,被刪除的分區數據難以處理

Kafka有內部的topic嗎?如果有是什麼?有什麼所用?

__consumer_offsets,保存消費者offset

Kafka分區分配的概念?

一個topic多個分區,一個消費者組多個消費者,故需要將分區分配個消費者(roundrobin、range)

簡述Kafka的日誌目錄結構?

每個分區對應一個文件夾,文件夾的命名爲topic-0,topic-1,內部爲.log和.index文件

如果我指定了一個offset,Kafka Controller怎麼查找到對應的消息?

image.png

聊一聊Kafka Controller的作用?

負責管理集羣broker的上下線,所有topic的分區副本分配和leader選舉等工作

Kafka中有那些地方需要選舉?這些地方的選舉策略又有哪些?

partition leader(ISR),controller(先到先得)

失效副本是指什麼?有那些應對措施?

不能及時與leader同步,暫時踢出ISR,等其追上leader之後再重新加入

Kafka的那些設計讓它有如此高的性能?

分區,順序寫磁盤,0-copy

關注微信公衆號
簡書:https://www.jianshu.com/u/0278602aea1d
CSDN:https://blog.csdn.net/u012387141

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章