kafka集群最少幾個節(jié)點 如何為Kafka集群選擇合適的Partitions數(shù)量?
如何為Kafka集群選擇合適的Partitions數(shù)量?感謝邀請回答這個問題。作為kafka的多年用戶,這點還是很有使用感受的。kafka每個數(shù)據(jù)流都要對應(yīng)一個topic, 每個topic可以有多個p
如何為Kafka集群選擇合適的Partitions數(shù)量?
感謝邀請回答這個問題。作為kafka的多年用戶,這點還是很有使用感受的。
kafka每個數(shù)據(jù)流都要對應(yīng)一個topic, 每個topic可以有多個parttion.每個parttion現(xiàn)只能被一個消費者消費.越多的partition 意味著越多的吞吐量。需要更多的文件句柄。如果消費者比較少,那更多的partition會浪費系統(tǒng)資源。從另一個角度上來說,越來越多會增加延時,會對實時性的數(shù)據(jù)讀寫產(chǎn)生不好的影響。
所以說恰當(dāng)?shù)姆謪^(qū)數(shù)會對kafka的性能有著比較重要的影響。
kafka脫離了zookeeper可以集群嗎?
問題1:kafka單純只是脫離zookeeper可以嗎?
zookeeper只是個服務(wù)注冊中心,如果kafka可以找到替代品換掉zookeeper是沒有問題的。
現(xiàn)有的服務(wù)器注冊中心有很多比如淘寶就有自已研發(fā)的服務(wù)注冊中心產(chǎn)品。
所以如果用其他的服務(wù)注冊中心系統(tǒng)換掉zookeeper是可行的(事實上zookeeper作為服務(wù)注冊中心功能性并不是很理想),比如它的狀態(tài)檢測并不能真實反應(yīng)broker的狀態(tài)(可連接就一定是狀態(tài)ok嗎?不是吧。)。
問題2:kafka脫離zookeeper為代表的服務(wù)注冊中心可以嗎?
不可以,kafka的集群管理的核心是zookeeper雖然它并不完美(甚至缺點很多)。但是沒了zk,kafka是不可用的。所以沒有服務(wù)注冊中心的kafka是不可用的。
kafka的一致性為什么不替換成raft?
一:更早的起源時間
kafka是2011 年被捐獻(xiàn)給 Apache 基金會,而raft論文是2013年由斯坦福大學(xué)發(fā)表的《In Search of an Understandable Consensus Algorithm》,kafka在raft之前誕生
二:更少的可容錯副本數(shù)量。raft當(dāng)有1/3個節(jié)點數(shù)目不可用時,服務(wù)不可用,kafka中維護(hù)的ISR(in-sync-replica),即便副本均不可用,只剩下Leader,也可以對外提供服務(wù)
三:更大的數(shù)據(jù)吞吐量。raft適合強(qiáng)一致性