簡體   English   中英

kafka主題分區的最大復制因子是多少

[英]What is the maximum replication factor for a partition of kafka topic

我有 3 個代理和幾個主題的 kafka 集群,每個主題有 5 個分區。 現在我想為分區設置復制因子。

我可以為 kafka 主題的分區設置的最大復制因子是多少?

復制因子決定了每個分區的復制數量,這允許 Kafka 在集群中的服務器發生故障時自動故障轉移到這些副本,以便在發生故障時消息仍然可用

分區副本分布在代理之間,一個代理應該保留一個副本,這意味着我們不能擁有比代理數量更多的副本

最大復制因子 <= 代理數量。

這也意味着確定min.insync.replicas ,這意味着它總是小於或等於復制因子

min.insync.replicas 表示 <= 復制因子

min.insync.replicas是您願意隨時在線以繼續運行和接受新傳入消息的最小數據副本數。

理想情況下,復制因子 3如上所述很好,但是,根據用例,您可以將復制因子調整為小於 2(意味着高風險),同時大於 3 提供更好的可用性,但需要更多開銷和更大的大小。

在決定復制因子時,還要考慮以下幾點:

A):Broker Size復制因子直接影響整個 Broker 磁盤大小

所以高復制因子需要更大的磁盤大小

B)大量分區復制:在大量分區復制的情況下,會增加額外的延遲。

一個代理只能為一個分區托管一個副本。

因此,如果您的集群有 3 個代理,那么您可以擁有的最大復制因子是 3。

雖然理論上可以設置具有非常大的復制因子的主題,但實際上將其設置在 4 以上幾乎沒有任何好處。副本用於高可用性和持久性,並且基本上確定在丟失任何數據之前可以離線的代理數量。 如果您有 3 個副本,則所有 3 個代理不太可能同時崩潰/失敗。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM