【云圖說】第235期 DDS讀寫兩步走 帶您領略只讀節點的風采
968
2025-04-01
福哥答案2020-12-23:
ActiveMQ:
Master-Slave 部署方式主從熱備,方式包括通過共享存儲目錄來實現(shared filesystem Master-Slave)、通過共享數據庫來實現(shared database Master-Slave)、5.9版本后新特性使用 ZooKeeper 協調選擇 master(Replicated LevelDB Store)。
Broker-Cluster 部署方式進行負載均衡。
RabbitMQ:
單機模式與普通集群模式無法滿足高可用,鏡像集群模式指定多個節點復制 queue 中的消息做到高可用,但消息之間的同步網絡性能開銷較大。
RocketMQ:
有多 master 多 slave 異步復制模式和多 master 多 slave 同步雙寫模式支持集群部署模式。
Producer 隨機選擇 NameServer 集群中的其中一個節點建立長連接,定期從 NameServer 獲取 Topic 路由信息,并向提供 Topic 服務的 Broker Master 建立長連接,且定時向 Master 發送心跳,只能將消息發送到 Broker master。
Consumer 同時與提供 Topic 服務的 Master、Slave 建立長連接,從 Master、Slave 訂閱消息都可以,訂閱規則由 Broker 配置決定。
Kafka:
由多個 broker 組成,每個 broker 是一個節點;topic 可以劃分為多個 partition,每個 partition 可以存在于不同的 broker 上,每個 partition 存放一部分數據,這樣每個 topic 的數據就分散存放在多個機器上的。
replica 副本機制保證每個 partition 的數據同步到其他節點,形成多 replica 副本;所有 replica 副本會選舉一個 leader 與 Producer、Consumer 交互,其他 replica 就是 follower;寫入消息 leader 會把數據同步到所有 follower,從 leader 讀取消息。
每個 partition 的所有 replica 分布在不同的機器上。某個 broker 宕機,它上面的 partition 在其他節點有副本,如果有 partition 的 leader,會進行重新選舉 leader。
***
[評論](https://user.qzone.qq.com/3182319461/blog/1608678134)
數據復制服務 DRS
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。