日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

rabbitmq 集群数据存储与单点故障

發布時間:2025/4/5 编程问答 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 rabbitmq 集群数据存储与单点故障 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

為什么80%的碼農都做不了架構師?>>> ??

rabbitmq每個節點記錄四類信息:交換機、隊列、綁定、vhost元數據。

集群中的信息存儲

在rabbitmq2.6.0之前沒有鏡像隊列,數據存儲情況為:

隊列所屬節點保存隊列全部信息(元數據、狀態、內容),其他節點擁有隊列元數據;所有節點保存exchange、bundling信息。好處有兩點:

? ? 1.節約存儲空間,每個節點都有相同信息的拷貝,意味著磁盤空間成倍占用;

? ? 2.提升性能,數據在節點間同步占用網絡資源,如果是持久化狀態,又會有大量I/O;

正常情況的工作原理:

集群中有三個節點:rabbit、hare、hare1,隊列聲明在hare節點,向rabbit節點發消息,消息會轉發到hare節點,消費者連接hare1節點,則從hare節點讀取數據。

異常情況1(發送過程中故障):

向rabbit節點發送5條消息,第一條發送成功后,關掉hare節點

2017-11-16 12:05:07,015 [http-bio-8080-exec-1] [org.springframework.amqp.rabbit.core.RabbitTemplate]-[DEBUG] Publishing message (Body:'< publishmessage 內容為:[ Thu Nov 16 12:05:07 CST 2017 ]>' MessageProperties [headers={}, contentType=text/plain, contentEncoding=UTF-8, contentLength=62, deliveryMode=PERSISTENT, priority=0, deliveryTag=0])on exchange [AMC_TMP_EXCHANGE], routingKey = [cluster.send]

控制臺顯示正常發送,實際上后面4條消息已經丟失

localhost:sbin zcjlq$ ./rabbitmqctl -n hare stop_app Stopping rabbit application on node hare@localhost localhost:sbin zcjlq$ ./rabbitmqctl -n rabbit -p zcjlq list_queues Listing queues AMC_TMP_QUEUE

hare節點重啟,只有第一條消息

localhost:sbin zcjlq$ ./rabbitmqctl -n hare start_app Starting node hare@localhost localhost:sbin zcjlq$ ./rabbitmqctl -n rabbit -p zcjlq list_queues Listing queues AMC_TMP_QUEUE 1

拓展:

如果使用publisher confirm機制,在回調函數RabbitTemplate.ConfirmCallback,你將拿到5個ack,RabbitTemplate.ReturnCallback不會被回調。


異常情況2(發送完畢故障):

假如我們連上任意節點,發送4條消息,先不消費,各個節點都能查到消息。

下面停掉隊列所屬節點hare

localhost:sbin zcjlq$ ./rabbitmqctl -n rabbit -p zcjlq list_queues Listing queues AMC_TMP_QUEUE 4 localhost:sbin zcjlq$ ./rabbitmqctl -n hare1 -p zcjlq list_queues Listing queues AMC_TMP_QUEUE 4 localhost:sbin zcjlq$ ./rabbitmqctl -n hare stop_app Stopping rabbit application on node hare@localhost localhost:sbin zcjlq$ ./rabbitmqctl -n hare1 -p zcjlq list_queues Listing queues AMC_TMP_QUEUE localhost:sbin zcjlq$ ./rabbitmqctl -n rabbit -p zcjlq list_queues Listing queues AMC_TMP_QUEUE localhost:sbin zcjlq$ ./rabbitmqctl -n hare start_app Starting node hare@localhost localhost:sbin zcjlq$ ./rabbitmqctl -n rabbit -p zcjlq list_queues Listing queues AMC_TMP_QUEUE 4 localhost:sbin zcjlq$ ./rabbitmqctl -n hare1 -p zcjlq list_queues Listing queues AMC_TMP_QUEUE 4

我們發現:停用hare節點后,在另外兩個節點查不到消息,hare節點重啟后,三個節點都能查到消息。

說明:本測試在單機上啟動三個節點(單機集群搭建見后續文章)

rabbitmqctl -n參數指定節點名稱,-p指定vhost名稱,start_app啟動節點,stop_app關閉節點,

list_queues查看隊列列表和待消費消息。

異常情況3(故障期間重新聲明隊列):

在恢復hare節點前,我們嘗試通過其他節點重新創建隊列。出現以下錯誤

Caused by: com.rabbitmq.client.ShutdownSignalException: channel error; protocol method: #method<channel.close>(reply-code=404, reply-text=NOT_FOUND - home node 'hare@localhost' of durable queue 'AMC_TMP_QUEUE' in vhost 'zcjlq' is down or inaccessible, class-id=50, method-id=10)

?

節點類型

集群中的節點有兩個類型:磁盤節點、內存節點。內存節點(ram)將所有的隊列、交換器、綁定、用戶、權限、vhost的元數據定義都僅存儲于內存中。磁盤節點(disc)將元數據存儲在磁盤中。

是磁盤節點還是內存節點?

在集群中聲明隊列、交換器、綁定的時候,其他節點會得到元數據的同步,如果集群中全都是磁盤節點,那么你需要等到所有的節點都磁盤I/O后才完成工作,內存節點將會更快。

rabbitmq要求集群中至少有一個磁盤節點。磁盤節點離開集群時,集群還可以進行部分工作,創建隊列、創建交換機、創建綁定、添加用戶、更改權限、添加或刪除集群節點將不能使用。原理的磁盤節點重啟后,集群可以正常工作。我們想要更安全一點:原磁盤節點重啟前,為讓集群正常工作,這時候可以考慮設置兩個集群節點,當其中一個磁盤節點離開時,它會將該變更通知到至少一個磁盤節點。

?

轉載于:https://my.oschina.net/zcjlq/blog/1574455

總結

以上是生活随笔為你收集整理的rabbitmq 集群数据存储与单点故障的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 黄色片久久久久 | 少妇又紧又爽视频 | 国产精品入口夜色视频大尺度 | 日本一区中文 | 日韩人妻一区二区三区蜜桃视频 | 91最新入口 | 欧美亚洲在线观看 | 免费黄色国产视频 | sm在线看| 免费色站 | 91全免费 | 国产素人av | 深夜福利免费在线观看 | 欧美高清一区 | 日韩一级影院 | 少妇一夜三次一区二区 | 宅宅少妇无码 | 国产草草浮力影院 | 成人影视在线看 | 高柳家在线观看 | 国产乱码精品一区二区三区亚洲人 | 黄色大全免费观看 | 99激情视频 | 9久久9毛片又大又硬又粗 | 色综合久久久 | 久久777| 亚洲m码 欧洲s码sss222 | 国产熟女一区二区三区五月婷 | 国产一区不卡在线 | 欧美自拍视频 | 成年免费在线观看 | 欧美性猛交一区二区三区精品 | 无遮挡在线观看 | 日吊视频| 亚洲天堂福利视频 | 被扒开腿一边憋尿一边惩罚 | 婷婷综合在线 | 女人被灌满精子 | 日韩操操操 | 九色91popny蝌蚪 | 国产成人免费av | 99精品视频一区二区 | 免费人成在线观看网站 | 伊人春色在线观看 | 四虎永久在线 | 日韩91精品 | 黄色小网站入口 | 蜜桃视频在线网站 | 在线高清免费观看 | 免费av小说 | 那个网站可以看毛片 | 在线观看国产区 | 差差差30分钟 | 欧美a级在线免费观看 | 久久久国产视频 | 欧美一级黄色大片 | 蜜芽久久 | 成人一区二区三区仙踪林 | 美女黄视频在线观看 | 三级性视频 | 国产精品亚洲无码 | 久久久久久久久网站 | 在线高清av | 色综合中文| 久草资源站 | 久久一级黄色片 | 亚洲精品乱 | 青青草在线免费视频 | 91亚洲精华国产精华精华液 | 麻豆射区 | 精品无码一区二区三区在线 | 色呦呦 | 又大又长粗又爽又黄少妇视频 | 性生交生活影碟片 | 日韩精品乱码久久久久久 | 丝袜美腿一区二区三区 | 久久精品大全 | 日韩 欧美 中文 | 国产精品高潮呻吟 | 国产精品1区 | 蜜臀av首页| 福利视频一区二区三区 | 五月婷婷色综合 | 午夜国产在线 | 国产做爰全免费的视频软件 | 欧美性插动态图 | 日韩精品aaa| 久久影视av | 精品国精品国产自在久不卡 | 不卡的av | 色综合久久久久 | 黄色动漫免费在线观看 | 国产精品免费久久久 | 777奇米四色 | 亚洲自偷自偷偷色无码中文 | 亚洲精品aaaaa | 欧美另类色图 | 国产在线视频福利 | 久久综合五月天 |