馬老師編譯原理
1)、2)、3)、4)這四種情況都屬于硬件資源可立即恢復(fù)情況,RocketMQ 在這四種情況下能保證消息不丟,或者丟失少量數(shù)據(jù)(依賴刷盤方式是同步還是異步)
5)、6)屬于點點故障,且無法恢復(fù),一旦發(fā)生,在此單節(jié)點上的消息全部丟失。
RocketMQ 在這兩種情況下,通過異步復(fù)制,可保證99%的消息不丟失,但是任然會有極少量的消息可能丟失。
通過同步雙寫技術(shù)可以完全避免單點,同步雙寫勢必會影響性能,適合對消息可靠性要求極高的場合,例如與Money相關(guān)的應(yīng)用。
注:RocketMQ從3.0版本開始支持同步雙寫。
至少一次
至少一次(At least Once)指每個消息必須投遞一次。Consumer 先 Pull 消息到本地,消費完成后,才向服務(wù)器返回
標簽: