topic 與 broker 之間存在對映關係

2021-08-21 08:32:56 字數 611 閱讀 3253

kafka中,

呼叫send()函式,傳送訊息時,沒有指定broker,

topic 與 broker 之間存在對映關係,對映關係儲存在元資料中,

由kafka底層去維護。

連線池producerpool,包含syncproducer。

syncproducer負責維持 producer與broker的連線。

syncproducer根據metadata中儲存的broker資訊,建立與相應broker的連線。

**上線,下線時,producer不會第一時間獲得,

producer只有呼叫send()方法時,才會去重新整理 metadata。

訊息快取池,recordaccumulator。

在訊息累加器內部,每乙個主題的每乙個分割槽topicpartition對應乙個雙端佇列,佇列中的元素都是recordbatch。

乙個分割槽的訊息對應乙個recordbatch。

recordbatch是同乙個主題傳送往同乙個分割槽的多條訊息組成。recordbatch的資料結構。

concurrentmap>  

key        ---topicpartition

value    ---deque

queue與topic的區別

jms中定義了兩種訊息模型 點對點 point to point,queue 和發布 訂閱 publish subscribe,topic 主要區別就是 是否能重複消費 訊息生產者生產訊息傳送到queue中,然後訊息消費者從queue中取出並且消費訊息。訊息被消費以後,queue中不再有儲存,所以訊...

kafka入門之broker 副本與ISR設計

kafka把分割槽的所有副本均勻地分配到所有broker上,並從這些副本中挑選乙個作為leader副本對外提供服務,而其他副本被稱為follower副本,只能被動地向leader副本請求資料,從而保持與leader副本的同步 所謂isr,就是kafka集群動態維護的一組同步副本集合,每個topic分...

kafka的啟動與測試 刪除topic

進入kafka的安裝目錄,不知道安裝目錄的可以用命令ps ef grep kafka來檢視,我的目錄是 usr local kafka 檢視埠,進入conf資料夾 kafkaserver.properties 啟動與停止 在啟動server topic 徹底刪除topic 如果需要被刪除topic ...