1. 程式人生 > >kafka中的幾個常見問題

kafka中的幾個常見問題

#kafka中的幾個常見問題 V1版
1,每個topic的分割槽中有多個segment,一個分割槽會被分成相同大小資料數量不等的segment,資料的生命週期就是指的是segment的生命週期

2,資料的儲存機制:

首先是Broker接受到資料,將資料放到作業系統的快取裡,(pagecache),

pagecache會盡可能多的使用空閒記憶體,

使用sendfile技術儘可能多的減少操作和應用程式之間地重複快取

寫資料的時候使用的是順序寫入,順序寫入的速度可達600M/s

3,kafka是怎麼負載均衡的呢?

首先獲取Consumer消費的起始分割槽號,然後計算出Consumer要消費的分割槽數量,用起始分割槽號的hash值%分割槽數,

目的是更好的消費資料

4,資料是怎麼分發的?

kafka預設呼叫自己的分割槽器(DefaultPartitioner),當然也可以自定義分割槽器,需要實現partitioner特質,實現partition方法

5,怎麼保證資料不丟失呢?

kafka的多副本機制就保證了資料的不丟失,副本數是在建立topic是指定的。