您好,登錄后才能下訂單哦!
這篇文章給大家分享的是有關Kafka發布消息時怎么選擇Partition的內容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。
Kafka 發送消息到有多個 Partition 的 Topic 時如何選擇 Partition。或許多數人已經知道 Kafka 默認(當 key 為 null) 時采用 Round-robin 策略,也就是雨露均沾,風水輪流轉,實現類是 DefaultPartitioner。但我們實際應用中為保持相關消息按序到,就必須送到指定的 Partition,方法可以有
指定 Partition 編號
指定 Key
自定義 Partitioner - 實現 org.apache.kafka.clients.producer.Partitioner, 并通過屬性注冊
還應考究當指定了 Key 或 Partition 編號發送消息后,后續消息 key 為 null 會選用哪個 Partition。最后再思考一個問題,Consumer 每次 poll 時是獲得的消息列表是否只包含一個 Partition 源還是可以多個 Partiton 源。
為完成本次實驗,可以本地搭建一個 Kafka 環境,參考 簡單搭建 Apache Kafka 分布式消息系統。待 Zookeeper 和 Kafka 正常啟動后,我們用下面的命令創建一個 Partition 數量為 3 的 Topic partition-test
bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 3 --topic partition-test
感謝各位的閱讀!關于“Kafka發布消息時怎么選擇Partition”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。