【kafka】kafka生產者消息投遞分區策略

分區緣由:
併發

1.提升負載能力。
2.提升讀寫併發能力。ide

  • [x] 副本leader負責讀寫,follower負責備份(選舉出leader)3d

  • [x] 投遞消息的分區策略
    生產者發送消息的時候,會將消息數據封裝成一個ProducerRecord對象。
    ProducerRecord(…參數…..);
    【kafka】kafka生產者消息投遞分區策略

@NotNull string topic 主題 string類型部位空
integer partition 分區序號,如0,1,2
string key
string value對象

分爲三種狀況:
blog

  • 指定partition分區序號,則直接將消息投遞進指定序號的分區。
  • 沒有指定partition分區序號,指定了key的狀況下。對key進行hash獲得的值,跟topic的分區數量進行取模獲得partition分區的值。如一個topic的分區數量爲3,則hash(key)%3爲消息投遞的分區。
  • 沒有指定分區partition和沒有指定key,則進行輪詢RoundRobin投遞分區。
相關文章
相關標籤/搜索