RabbitMQ的高可用性

RabbitMQ是比較有代表性的,因為是基于主從(非分布式)做高可用性的。RabbitMQ有三種模式:單機(jī)模式、普通集群模式、鏡像集群模式。
單機(jī)模式,Demo級別的,一般就是本地demo,沒人生產(chǎn)用單機(jī)模式。
普通集群模式(無高可用性)就是在多臺機(jī)器上啟動多個RabbitMQ實例,每臺機(jī)器啟動一個。創(chuàng)建的 queue,只會放在一個RabbitMQ實例上,但是每個實例都同步 queue 的元數(shù)據(jù)(元數(shù)據(jù)可以認(rèn)為是 queue 的一些配置信息,通過元數(shù)據(jù),可以找到 queue 所在實例)。消費(fèi)的時候,如果連接到了另外一個實例,那么那個實例會從 queue 所在實例上拉取數(shù)據(jù)過來。這種沒做到所謂的分布式,就是個普通集群。導(dǎo)致要么消費(fèi)者每次隨機(jī)連接一個實例然后拉取數(shù)據(jù),要么固定連接那個 queue 所在實例消費(fèi)數(shù)據(jù),前者有數(shù)據(jù)拉取的開銷,后者導(dǎo)致單實例性能瓶頸。而且如果那個放 queue 的實例宕機(jī)了,會導(dǎo)致接下來其他實例就無法從那個實例拉取,如果你開啟了消息持久化,讓 RabbitMQ 落地存儲消息的話,消息不一定會丟,得等這個實例恢復(fù)了,然后才可以繼續(xù)從這個 queue 拉取數(shù)據(jù)。所以這個沒有什么所謂的高可用性,這方案主要是提高吞吐量的,就是讓集群中多個節(jié)點(diǎn)來服務(wù)某個 queue 的讀寫操作。
鏡像集群模式(高可用性)這種模式,才是所謂的 RabbitMQ 的高可用模式。跟普通集群模式不一樣的是,在鏡像集群模式下,你創(chuàng)建的 queue,無論是元數(shù)據(jù)還是 queue 里的消息都會存在于多個實例上,就是說,每個 RabbitMQ 節(jié)點(diǎn)都有這個 queue
你是否還在尋找穩(wěn)定的海外服務(wù)器提供商?創(chuàng)新互聯(lián)www.cdcxhl.cn海外機(jī)房具備T級流量清洗系統(tǒng)配攻擊溯源,準(zhǔn)確流量調(diào)度確保服務(wù)器高可用性,企業(yè)級服務(wù)器適合批量采購,新人活動首月15元起,快前往官網(wǎng)查看詳情吧
文章題目:MQ消息隊列高可用性-創(chuàng)新互聯(lián)
文章起源:http://chinadenli.net/article28/iiicp.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供動態(tài)網(wǎng)站、全網(wǎng)營銷推廣、響應(yīng)式網(wǎng)站、云服務(wù)器、定制開發(fā)、網(wǎng)站設(shè)計公司
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容