kafka為什么會丟消息 JAVA面試如何保證消息不被重復(fù)消費(fèi)?如何保證消息消費(fèi)的冪等性?
JAVA面試如何保證消息不被重復(fù)消費(fèi)?如何保證消息消費(fèi)的冪等性?我是閑著沒事干,來這里玩的,開始在各個網(wǎng)絡(luò)找技術(shù)資料,后就以《頭條》為主了。由找資料轉(zhuǎn)向了交朋友了。因為我想的東西落后了時代,有些的想的
JAVA面試如何保證消息不被重復(fù)消費(fèi)?如何保證消息消費(fèi)的冪等性?
我是閑著沒事干,來這里玩的,開始在各個網(wǎng)絡(luò)找技術(shù)資料,后就以《頭條》為主了。由找資料轉(zhuǎn)向了交朋友了。因為我想的東西落后了時代,有些的想的,由于自己程度不高。在腦子里只是勾思,達(dá)不到實(shí)際!?。?/p>
kafka分布式的情況下,如何保證消息的順序?
Kafka分布式的單位是partition,Kafka保證一個partition內(nèi)的數(shù)據(jù)是有序的,而partition間的數(shù)據(jù)不能保證有序性,而多partition的特點(diǎn)使得Kafka可以一定程度上擁有分布式消息傳遞能力。
在業(yè)務(wù)上我們需要將需要嚴(yán)格順序排列的數(shù)據(jù)放置在一個partition上,同時將可以分布式處理的消息放置到其他partition上以保證高性能。
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é)點(diǎn)數(shù)目不可用時,服務(wù)不可用,kafka中維護(hù)的ISR(in-sync-replica),即便副本均不可用,只剩下Leader,也可以對外提供服務(wù)
三:更大的數(shù)據(jù)吞吐量。raft適合強(qiáng)一致性