rabbitmq集群四種架構模式: 1、主備模式 (Warren)
2、鏡像模式 (Mirror)
3、遠程模式 (Shovel)
4、多活模式 (Federation) 主備模式:開發中最直接的模式就是主備模式:主要實作RabbitMQ的高可用集群,一般在并發和資料量不高的情況下,這種模型非常的好用且簡單,主備模式也稱為Warren模式,也就是一主一備,對于集群來說至少有兩臺云服務器,那么這兩臺服務器一臺在作業,一臺在閑置,注意,這個的主備和我們之前的主從是不一樣的,主從的話是一臺作為主服務器,一臺作為從服務器,雖然這兩臺是資料同步,主負責讀寫,而從只負責只讀,而主備是一臺作業一臺閑著,如果一臺服務器宕機了,那么備服務器切換過來,可能的話,這種對于負載均衡的話一臺只忙著干活,一臺只閑著,這種的生產中用的也很少,這種會造成我們資源的一個浪費,
鏡像模式:集群模式非常經典的就是Mirror鏡像模式,保證100%資料不丟失,在實際作業中也是用的最多的,而且實作集群也非常簡單,一般互聯網大廠都會構建這種鏡像集群模式,原理主要是在主備的基礎上進行了擴展,集群中所有的節點設備都是同步的,每一個佇列,交換機里面的配置資訊和我們的資料都是同步的,對于這些鏡像在底層同時進行作業,前面的話采用一個負載均衡器,采用nginx或者haproxy也好,進行負載均衡,
遠程模式:遠程模式可以實作雙活的一種模式,簡稱Shovel模式,所謂Shovel就是我們可以把訊息進行不同資料中心的復制作業,我們可以跨地域的讓兩個MQ集群互聯,比如說一個集群,我們都會放在一個機房里面,那么如果北京的機房出現了一些事故停電,或者自然災害,那么這個集群都會宕機了,那么在我們對資料要求極高的大型應用我們需要設定多活或者雙活的模式,也就是要搭建多個資料中心,或者多套集群,那么這些集群可以一個會放在上海,一個放在北京,還有應放在廣州,三個集群資料都是同步的,中間有任何一個集群出現了問題,馬上靈活的切換,那么這三個集群都是可以訪問的話,我們可能會按照距離,或者訪問速度來進行優先選擇哪組集群,或者資料中心進行訪問,所有多活模式,在銀行開發的時候一般也叫做容災的機制,至少構建兩套集群放在不同的地域,一個有問題了,立馬進行切換,不至于整個系統宕機,這就是多活模式,在多活模式中MQ也提供了相應的實作方式,早期使用的Shovel模式,這個模式是mq自帶的一種模式,主要就是可以把訊息在不同的資料中心進行負載分發,主要就是可以實作跨地域的讓兩個mq集群進行互聯,
那么這個shovel模式需要統一的版本,網路達到一個什么樣的水平,配置的話也是有些復雜,這種的話目前已經淘汰了,在真正的資料復制的情況下,會使用多活模式,
多活模式:這種模式也是實作異地資料復制的主流模式,這種模式是依賴rabbimq的fedrtation插件的模式
本身不是mq自帶的東西,是在mq上進行了擴展,而這種擴展是實作的可靠的AMQP的資料通信,因此配置起來也比較容易,相當于配置簡單化之后的shovel,
原文地址:https://www.yisu.com/zixun/115327.html
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/203957.html
標籤:架構設計
上一篇:drf—— drf的請求與回應
下一篇:管理篇-如何跨部門溝通?
