介紹項目 為什么這個項目要用繼承Thread類的方式實現多線程? 線程池和繼承Thread類實現多線程有什么區別,對應什么場景? 如果現在有一個業務,計算量比較大,另一個業務,消費者消費topic的數據,可能存在消費能力不夠的情況,分別讓你使用線程池你怎么確定方案? 假設現在有好幾個業務要使用線程池,你是復用原先的線程池,還是每個業務一個線程池?
面試官問的面試題: 每個業務一個線程池的話,假設要使用線程池的業務很多,怎么處理?
Kafka的消費者端消息消費來不及會導致什么問題?
Kafka消息堆積會導致什么問題?Kafka內部有什么處理策略?作為開發怎么解決?
除了增加消費者,有哪些參數可以略微調整解決這個問題?
實現生產者發送數據的時候通常要設置什么參數,有什么意義?
消費者端使用的時候要設置什么參數?為什么?
什么時候會發生消息丟失和重復消費?
自動提交和手動提交場景下,會發生重復消費還是消息丟失,是其中一種還是兼而有之?
為什么消費的時候不能自動提交offset?
什么時候會發生再均衡?
為了避免這個問題,有什么辦法?
session.timeout.ms了解嗎?是什么超時?
max.poll.interval.ms了解嗎?生產上怎么根據業務調整這個參數?
消費者和partition配比是怎么樣的?一對一還是哪一方多一些?為什么?
es了解嗎?什么場景要使用es?
為什么es復雜條件搜索數據更快?倒排索引結構了解嗎?
es能替代MySQL嗎?
es的深分頁問題詳細描述一下?為什么有這個問題?
深度分頁你怎么解決的?
scroll和search after有什么區別?
項目協調的過程中,為了推動項目的快速落地,你采用什么辦法?