1.內(nèi)部topic
答案:__consumer_offsets:作用是保存 Kafka 消費(fèi)者的位移信息,logCleaner線程來完成清除無用的提交(沒有消息消費(fèi)了,默認(rèn)5s一直在提交);
__transaction_state:用來存儲事務(wù)日志消息
2.優(yōu)先副本選舉
答案:解決當(dāng)某個(gè)主機(jī)down機(jī)后,部分主機(jī)會有多個(gè)leader 副本,導(dǎo)致負(fù)載不均衡,優(yōu)先副本選舉就是解決此問題,生產(chǎn)上不建議開啟,可以手動(dòng)控制。
3.副本怎么同步?
答案:所謂同步,必須滿足兩個(gè)條件:
副本節(jié)點(diǎn)必須能與zookeeper保持會話(心跳機(jī)制)
副本能復(fù)制leader上的所有寫操作,并且不能落后太多(卡主或滯后的副本控制由replica.lag.time.max.ms配置)
利用HW,LEO進(jìn)行復(fù)制同步。
4.如果我指定了一個(gè)offset,Kafka怎么查找到對應(yīng)的消息?
答案:
1)跳躍表找到分段文件
2)利用稀疏索引(.index),通過二分法定位到相鄰的offset
3)接著在segment順序查找
5.延遲隊(duì)列,重試隊(duì)列,死信隊(duì)列
答案:延遲隊(duì)列:用戶登錄過時(shí),訂單30分鐘自動(dòng)取消
重試隊(duì)列:可以利用延遲隊(duì)列實(shí)現(xiàn),即該消息處理失敗后,多久時(shí)間重試
死信隊(duì)列:消息處理失敗的隊(duì)列
更多關(guān)于“大數(shù)據(jù)培訓(xùn)”的問題,歡迎咨詢千鋒教育在線名師。千鋒教育多年辦學(xué),課程大綱緊跟企業(yè)需求,更科學(xué)更嚴(yán)謹(jǐn),每年培養(yǎng)泛IT人才近2萬人。不論你是零基礎(chǔ)還是想提升,都可以找到適合的班型,千鋒教育隨時(shí)歡迎你來試聽。