2017-06-16 68 views

回答

4

除了在主題上設置複製因子2或3以確保最終創建備份副本副本之外,還應該使用acks = all發佈消息,以確保確認表明數據已寫入的保證所有的副本。否則,當ack = 1時,只有1個副本被提交後會得到ack,而ack = 0則根本沒有ack,所以你永遠不會知道你發佈的消息是否已經將它記錄到Kafka提交日誌中。

還將不乾淨的leader選項參數設置爲false,以確保只有insync副本可以成爲領導者。

0

是的,複製因子定義了這一點。

1

在Kafka中,您可以定義一個主題的複製因子,並以這種方式將每個分區複製到更多的代理上。其中之一是生產者和消費者連接交換信息的領導者。另一個是追隨者,從領導者的消息副本中獲得同步。如果領導者失敗,新的領導者選舉將在所有同步副本之間開始。卡夫卡將支持N-1失敗的經紀人,其中N是複製因素。