kafka 相關(guān)配置總結(jié)

kafka 總結(jié)

  • 心跳線程和poll線程分開,但是心跳線程是在poll線程中啟動的
  • 在滿足max.partition.fetch.bytes限制的情況下,假如fetch到了100個record,放到本地緩存后,由于max.poll.records限制每次只能poll出15個record。
    那么KafkaConsumer就需要執(zhí)行7次poll才能將這一次通過網(wǎng)絡(luò)發(fā)起的fetch請求所fetch到的這100個record消費完畢。其中前6次是每次pool中15個record,最后一次是poll出10個record。
  • session.timeout.ms:這個值必須設(shè)置在broker configuration中的group.min.session.timeout.ms 與 group.max.session.timeout.ms之間。
    當Consumer由于某種原因不能發(fā)Heartbeat到coordinator時,并且時間超過session.timeout.ms時,就會認為該consumer已退出,它所訂閱的partition會分配到同一group 內(nèi)的其它的consumer
  • ·heartbeat.interval.ms:心跳是在consumer與coordinator之間進行的。心跳是確定consumer存活,加入或者退出group的有效手段。所以heartBeat最好小于session.timeout 這樣我們可以在缺少多個heartBeat后再讓該consumer退出
  • ·max.poll.interval.ms:前面說過要求程序中不間斷的調(diào)用poll()。如果長時間沒有調(diào)用poll,且間隔超過這個值時,就會認為這個consumer失敗了。因為我們poll一般都是阻塞一段時間poll,如果pollTimeout大于max.poll.interval.ms 會導(dǎo)致
    如果沒有數(shù)據(jù) 在阻塞過程中kafka 剔除該consumer
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容