RocketMQ的集群模式
1 單點(不推薦)
優點
除了配置簡單沒什么優點,適合個人學習使用。
缺點
不可靠,該機器重啟或宕機,將導致整個服務不可用。無 HA,測試環境玩玩就行。
2 主從
主節點可收發消息,從節點不能接收消息。
具備 HA。不支持主從切換。
3 雙主(不推薦)
多個 master 節點組成集群,單個 master 節點宕機或者重啟對應用沒有影響。
優點
所有模式中性能最高
缺點
單個 master 節點宕機期間,未被消費的消息在節點恢復之前不可用,消息的實時性就受到影響。
注意:使用同步刷盤可以保證消息不丟失,同時 Topic 相對應的 queue 應該分布在集群中各個節點,而不是只在某各節點上,否則,該節點宕機會對訂閱該 topic 的應用造成影響。
4 雙主雙從、多主多從
雙主雙從
多 master 多 slave 異步復制
在多 master 模式的基礎上,每個 master 節點都有至少一個對應的 slave。master節點可讀可寫,但是 slave 只能讀不能寫,類似于 mysql 的主備模式。
優點
在 master 宕機時,消費者可以從 slave讀取消息,消息的實時性不會受影響,性能幾乎和多 master 一樣。
缺點
使用異步復制的同步方式有可能會有消息丟失的問題。
多 master 多 slave 同步雙寫
同多 master 多 slave 異步復制模式類似,區別在于 master 和 slave 之間的數據同步方式。
優點
同步雙寫的同步模式能保證數據不丟失。
缺點
發送單個消息 RT 會略長,性能相比異步復制低10%左右。
刷盤策略
同步刷盤和異步刷盤(指的是節點自身數據是同步還是異步存儲)
同步方式
同步雙寫和異步復制(指的一組 master 和 slave 之間數據的同步)
注意:要保證數據可靠,需采用同步刷盤和同步雙寫的方式,但性能會較其他方式低。
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。