溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Java?Rabbitmq中四種集群架構(gòu)的區(qū)別是什么

發(fā)布時間:2022-03-01 09:11:27 來源:億速云 閱讀:166 作者:小新 欄目:開發(fā)技術

這篇文章給大家分享的是有關Java Rabbitmq中四種集群架構(gòu)的區(qū)別是什么的內(nèi)容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。

    Rabbitmq 四種集群架構(gòu)

    1. 主備模式 
    2. 遠程模式
    3. 鏡像模式  
    4. 多活模式

    主備模式

    主備模式: warren 兔子窩 一個主、一個備方案 主節(jié)點如果掛了 從節(jié)點提供服務 和Activemq 利用zk 做主/備一樣

    Java?Rabbitmq中四種集群架構(gòu)的區(qū)別是什么

    主備模式 -----------------------》HaProxy 配置

    listen rabbitmq_cluster 
    bind 0.0.0.0:5682 # 配置tcp 模式
    mode tcp # 簡單的輪詢
    balance roundrobin #主節(jié)點 
    server bhz76 192.168.11.78:5672 check inter 5000 rise 2 fall 2 
    server bhz76 192.168.11.79:5672 backup check inter 5000 rise 2 fall 2   #備用節(jié)點

    遠程模式

    遠程模式 遠距離通信和復制 可以實現(xiàn)雙活的一種模式,簡稱 Shovel 模式 配置麻煩 現(xiàn)在使用不多

    所謂Shovel 就是我們可以把消息進行不同數(shù)據(jù)中心的復制工作 ,可以跨地域的讓兩個mq 集群互聯(lián)

    Java?Rabbitmq中四種集群架構(gòu)的區(qū)別是什么

    Java?Rabbitmq中四種集群架構(gòu)的區(qū)別是什么

    1.0 Step1 啟動RabbitMq 插件  
         rabbitmq-plugins enable amqp_client 
         rabbitmq-plugins enable rabbitmq_shovel
    2. 0 創(chuàng)建rabbitmq.config 文件
       touch /etc/rabbitmq/rabbitmq.config

    Java?Rabbitmq中四種集群架構(gòu)的區(qū)別是什么

    鏡像模式

    集群模式非常經(jīng)典的就是Mirror 鏡像模式 保證100%數(shù)據(jù)不丟失

    在實際工作中用的最多 并且實現(xiàn)集群非常的簡單 一般互聯(lián)網(wǎng)大廠 都會使用這樣構(gòu)建這種鏡像集群模式

    Mirror 鏡像隊列

    高可靠 ----------》數(shù)據(jù)同步 —》elang 交換機 ----》3節(jié)點

    Java?Rabbitmq中四種集群架構(gòu)的區(qū)別是什么

    缺點 :沒有保證橫向擴容

    多活模式

    這種模式也是實現(xiàn)異地數(shù)據(jù)復制的主流模式 因為Shovel 模式 配置比較復雜 所以一般來說實現(xiàn)異地集群都是使用這種雙活或者 多活模型來實現(xiàn)的

    這種模型需要依賴RabbitMq 的federation 插件 可以實現(xiàn)持續(xù)的可靠的Amqp 的數(shù)據(jù)通信 多活模式實際配置與應用非常簡單

    RabbitMq 部署架構(gòu)采用雙中心模式 多中心 那么在兩套 或多套 數(shù)據(jù)中心中客部署一套 RabbitMq 集群 客中心的RabbitMq 服務除了需要為業(yè)務提供正常的消息服務外 中心之間還需要實現(xiàn)部分隊列消息共享

    Java?Rabbitmq中四種集群架構(gòu)的區(qū)別是什么

    Federation 插件

    Federation 插件 是一個不需要構(gòu)建Cluster 而在Brokers 之間傳輸消息的高性能插件 Federation 插件 可以在Brokers 或者Cluster 之間傳輸消息 連接的雙方可以使用不同的users 和virtual hosts 雙方也可以使用版本不同的 RabbitMqErlang Federation 插件使用AMQP 協(xié)議通訊 可以接收不連接的傳輸

    Federation Exchanges 可以看成Downstream 從Upstream 主動拉取消息 但并不是拉取所有消息 必須是在Downstream 上已經(jīng)明確定義Bindings 關系的 Exchange 也就是有實際的物理 Queue 來接收消息 才會從Upstream 拉取消息組合在一起 ,綁定/解除綁定命令將發(fā)送到Upstream 交換機 因此 Federation Exchanges 只接收具有訂閱的消息

    Java?Rabbitmq中四種集群架構(gòu)的區(qū)別是什么

    感謝各位的閱讀!關于“Java Rabbitmq中四種集群架構(gòu)的區(qū)別是什么”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!

    向AI問一下細節(jié)

    免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

    AI