第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Apache Kafka 生產者如何將記錄并行發(fā)送到分區(qū)?

Apache Kafka 生產者如何將記錄并行發(fā)送到分區(qū)?

MMTTMM 2021-12-10 12:23:19
從Kafka的API文檔中我找到了對Apache Kafka中send()方法的描述(producer的api文檔):“發(fā)送是異步的,一旦記錄存儲在等待發(fā)送的記錄緩沖區(qū)中,此方法將立即返回。這允許并行發(fā)送許多記錄而不會阻塞等待每個記錄后的響應?!蔽抑皇窍胫烙涗浭侨绾尾⑿邪l(fā)送的?如果我有 3 個代理,并且每個代理在同一主題下有 3 個分區(qū),那么 Kafka 生產者是否會將記錄并行發(fā)送到 9 個分區(qū)?或者生產者只是同時將記錄發(fā)送給 3 個經紀人?生產者如何并行工作?
查看完整描述

2 回答

?
慕田峪4524236

TA貢獻1875條經驗 獲得超5個贊

Kafka 客戶端使用一個org.apache.kafka.common.requests.ProduceRequest可以同時為多個分區(qū)攜帶有效載荷的 (參見http://kafka.apache.org/protocol.html#The_Messages_Produce )。


因此,它org.apache.kafka.clients.NetworkClient在三個請求中并行發(fā)送(使用)到(三個)代理中的每一個,即:


- sends records for topic-partition0, topic-partition1, topic-partition2 to broker 1

- sends records for topic-partition3, topic-partition4, topic-partition5 to broker 2

- sends records for topic-partition6, topic-partition7, topic-partition8 to broker 3

您可以控制使用生產者配置完成的批處理量。


(注意我回答了 9 個唯一的分區(qū),如果你的意思是復制分區(qū),你只發(fā)送給領導者 - 然后復制將處理傳播)。


查看完整回答
反對 回復 2021-12-10
?
牧羊人nacy

TA貢獻1862條經驗 獲得超7個贊

是的,Producer 會將發(fā)往每個分區(qū)領導者的消息進行批量處理,并將并行發(fā)送。來自API 文檔

send() 方法是異步的。調用時,它將記錄添加到待發(fā)送記錄的緩沖區(qū)中并立即返回。這允許生產者將單個記錄批處理在一起以提高效率。

生產者為每個分區(qū)維護未發(fā)送記錄的緩沖區(qū)。這些緩沖區(qū)的大小由 batch.size 配置指定。將其設置得更大可能會導致更多的批處理,但需要更多的內存(因為我們通常會為每個活動分區(qū)使用這些緩沖區(qū)之一)。

這是一個幫助圖:

http://img1.sycdn.imooc.com//61b2d65e0001813319140889.jpg

查看完整回答
反對 回復 2021-12-10
  • 2 回答
  • 0 關注
  • 405 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號