观看麻豆影视文化有限公司-国产 高清 在线-国产 日韩 欧美 亚洲-国产 日韩 欧美 综合-日日夜夜免费精品视频-日日夜夜噜

鏡像模式(盈高準入鏡像模式)

  • 生活
  • 2023-04-26 12:16
概述

今天主要分享RabbitMQ常見的4種集群架構,有待改進,大家一起看看吧!

01主備模式

也稱為Warren(兔子窩)模式。實現rabbitMQ的高可用集群,一般在并發和數據量不高的情況下,這種模式非常的好用且簡單。

也就是一個主/備方案,主節點提供讀寫,備用節點不提供讀寫。如果主節點掛了,就切換到備用節點,原來的備用節點升級為主節點提供讀寫服務,當原來的主節點恢復運行后,原來的主節點就變成備用節點,和activeMQ利用zookeeper做主/備一樣,也可以一主多備。

HaProxy配置:

listenrabbitmq_clusterbind0.0.0.0:567#配置tcp模式modetcp#簡單的輪詢balanceroundrobin#主節點roundrobin隨機server你的76機器hostname192.168.11.76:5672checkinter5000rise2fall2server你的77機器hostname192.168.11.77:5672backupcheckinter5000rise2fall2#備用節點

注意了,上面的rabbitMQ集群節點配置#inter每隔5秒對mq集群做健康檢查,2次正確證明服務可用,2次失敗證明服務器不可用,并且配置主備機制

02***模式

***模式可以實現雙活的一種模式,簡稱shovel模式,所謂的shovel就是把消息進行不同數據中心的復制工作,可以跨地域的讓兩個MQ集群互聯,遠距離通信和復制。

Shovel就是我們可以把消息進行數據中心的復制工作,可以跨地域的讓兩個MQ集群互聯。

***模式

如圖所示,有兩個異地的MQ集群(可以是更多的集群),當用戶在地區1這里下單了,系統發消息到1區的MQ服務器,發現MQ服務已超過設定的閾值,負載過高,這條消息就會被轉到地區2的MQ服務器上,由2區的去執行后面的業務邏輯,相當于分攤我們的服務壓力。

在使用了shovel插件后,模型變成了近端同步確認,遠端異步確認的方式,大大提高了訂單確認速度,并且還能保證可靠性。

shovel模式拓撲圖

如上圖所示,當我們的消息到達exchange,它會判斷當前的負載情況以及設定的閾值,如果負載不高就把消息放到我們正常的warehouse_goleta隊列中,如果負載過高了,就會放到backup_orders隊列中。backup_orders隊列通過shovel插件與另外的MQ集群進行同步數據,把消息發到第二個MQ集群上。

不過這是rabbitMQ比較早期的架構模型了,現在很少使用了。

03鏡像模式

非常經典的mirror鏡像模式,保證100%數據不丟失。在實際工作中也是用得最多的,并且實現非常的簡單,一般互聯網大廠都會構建這種鏡像集群模式。

mirror鏡像隊列,目的是為了保證rabbitMQ數據的高可靠性解決方案,主要就是實現數據的同步,一般來講是2-3個節點實現數據同步。對于100%數據可靠性解決方案,一般是采用3個節點。

集群架構如下

mirror鏡像隊列

如上圖所示,用KeepAlived做了HA-Proxy的高可用,然后有3個節點的MQ服務,消息發送到主節點上,主節點通過mirror隊列把數據同步到其他的MQ節點,這樣來實現其高可靠。

04多活模式

這個也是實現異地數據復制的主流模式,因為shovel模式配置比較復雜,所以一般來說,實現異地集群的都是采用這種雙活或者多活模型來實現的。這種模式需要依賴rabbitMQ的federation插件,可以實現持續的,可靠的AMQP數據通信,多活模式在實際配置與應用非常的簡單。

rabbitMQ部署架構采用雙中心模式(多中心),那么在兩套(或多套)數據中心各部署一套rabbitMQ集群,各中心的rabbitMQ服務除了需要為業務提供正常的消息服務外,中心之間還需要實現部分隊列消息共享。

多活集群架構如下:

federation插件是一個不需要構建cluster,而在brokers之間傳輸消息的高性能插件,federation插件可以在brokers或者cluster之間傳輸消息,連接的雙方可以使用不同的users和virtualhosts,雙方也可以使用不同版本的rabbitMQ和erlang。federation插件使用AMQP協議通信,可以接受不連續的傳輸。federation不是建立在集群上的,而是建立在單個節點上的,如圖上黃色的rabbitnode3可以與綠色的node1、node2、node3中的任意一個利用federation插件進行數據同步。

如上圖所示,federationexchanges可以看成downstream從upstream主動拉取消息,但是并不是拉取所有消息,必須是在downstream上已經明確定義Bingdings關系的exchange,也就是有實際的物理queue來接收消息,才會從upstream拉取消息到downstream。

它使用AMQP協議實現代理間通信,downstream會將綁定關系組合在一起,綁定/解綁命令將發送到upstream交換機。因此,federationexchange只接收具有訂閱的消息。

其實四種模式建議大家重點掌握第三種,鏡像模式屬于標準的集群鏡像模式。其他幾種模式都存在出現臟數據問題的可能,后面會分享更多devops和DBA方面內容,感興趣的朋友可以關注下!

猜你喜歡

主站蜘蛛池模板: 欧美日韩一级黄色片 | 特级做人爱c级特级aav毛片 | 久久精品视频网 | 韩国一级黄色毛片 | 久久久久国产精品免费免费 | 日韩免费观看一级毛片看看 | 日韩精品首页 | 一区二区免费看 | a国产| 99国内视频 | 特黄特黄黄色大片 | 免费a级毛片大学生免费观看 | 日韩亚洲欧美理论片 | 国产爱啪啪 | 中国大陆一级毛片 | 俄罗斯aa毛片一级 | 久久久免费观成人影院 | 天堂av影院 | 国产亚洲精品免费 | 久久国产视频在线观看 | 久草视频精品在线 | 欧美日韩精品一区二区三区不卡 | 一级特黄a视频 | 久久草在线| 美女张开腿让我桶 | 欧美精品在线一区二区三区 | 亚洲bbbbbxxxxx精品三十七 | 99色视频在线 | 另类视频区第一页 | 美国成人免费视频 | 国产高清在线看 | 欧美无极品 | 国产精品国产精品国产三级普 | 欧美一级特黄aa大片视频 | 免费人成网站免费看视频 | 久久影院视频 | 自拍三级视频 | 国产一级一级 | 欧美日韩国产一区三区 | 日本一区二区三区四区公司 | 国产精品高清视亚洲精品 |