RabbitMQ系列(5)-理解消息通信-虛擬主機(jī)和隔離

每個(gè)RabbitMQ服務(wù)器都能創(chuàng)建虛擬的消息服務(wù)器,我們稱(chēng)之為虛擬主機(jī)(vhost)每一個(gè)vhost本質(zhì)上是一個(gè)mini版的RabbitMQ服務(wù)器,擁有自己的隊(duì)列、交換器和綁定等等

歡迎訪(fǎng)問(wèn)本人博客:http://wangnan.tech

多租戶(hù)模式:虛擬主機(jī)和隔離

概述

  • 每個(gè)RabbitMQ服務(wù)器都能創(chuàng)建虛擬的消息服務(wù)器,我們稱(chēng)之為虛擬主機(jī)(vhost)每一個(gè)vhost本質(zhì)上是一個(gè)mini版的RabbitMQ服務(wù)器,擁有自己的隊(duì)列、交換器和綁定等等
  • 更重要的是,他擁有自己的權(quán)限機(jī)制這使得你能夠安全地使用一個(gè)RabbitMQ服務(wù)器來(lái)服務(wù)眾多的應(yīng)用程序
  • vhost就像是虛擬機(jī)之與物理服務(wù)器一樣:他們?cè)诟鱾€(gè)實(shí)例間提供邏輯上的分離,允許你為不同程序安全保密地運(yùn)行數(shù)據(jù),它既能將同一個(gè)Rabbit的眾多客戶(hù)區(qū)分開(kāi)來(lái),又可以避免隊(duì)列和交換器命名沖突
  • vhost是AMQP概念的基礎(chǔ),你必須在連接時(shí)進(jìn)行指定
  • RabbitMQ包含了一個(gè)開(kāi)箱即用的默認(rèn)vhost:"/",如果你不需要多個(gè)vhost,那么就使用默認(rèn)的吧,使用缺省的guest用戶(hù)名和密碼guest就可以訪(fǎng)問(wèn)默認(rèn)的vhost
  • 當(dāng)你在RabbitMQ集群上創(chuàng)建vhost,整個(gè)集群上都會(huì)創(chuàng)建該vhost,vhost不僅消除了為基礎(chǔ)架構(gòu)中的每一層運(yùn)行一個(gè)RabbitMQ服務(wù)器的需要,同樣也避免了為每一層創(chuàng)建不同集群

如何創(chuàng)建vhost

vhost和權(quán)限控制非常獨(dú)特,他們是AMQP中唯一無(wú)法通過(guò)AMQP協(xié)議的基元(不同與隊(duì)列,交換器和綁定)

創(chuàng)建vhost

你需要通過(guò)RabbitMQ的安裝路徑下的./sbin/目錄中的rabbitmqctl工具來(lái)創(chuàng)建

運(yùn)行:

rabbitmqctl add_vhost[vhost_name]

可以創(chuàng)建一個(gè)vhost,其中[vhost_name]就是你想要?jiǎng)?chuàng)建的vhost

刪除vhost

rabbitmqctl delete_vhost[vhsost_name]

查看Rabbit服務(wù)器上運(yùn)行著那些vhost

rabbitmqctl list_vhost

你就會(huì)看到如下所示的內(nèi)容

$ ./sbin/rabbitmqctl list_vhosts
Listing vhosts ...
/
oak
sycamore
...done.

管理遠(yuǎn)程RabbitMQ節(jié)點(diǎn)

-n rabbit@[server_name]

rabbit表示Erlang應(yīng)用程序名稱(chēng)
[server_name]表示ip

(注:內(nèi)容整理自《RabbitMQ實(shí)戰(zhàn)》)

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀(guān)點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Spring Cloud為開(kāi)發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見(jiàn)模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 136,680評(píng)論 19 139
  • 關(guān)于消息隊(duì)列,從前年開(kāi)始斷斷續(xù)續(xù)看了些資料,想寫(xiě)很久了,但一直沒(méi)騰出空,近來(lái)分別碰到幾個(gè)朋友聊這塊的技術(shù)選型,是時(shí)...
    預(yù)流閱讀 586,685評(píng)論 51 787
  • RabbitMQ采用Erlang編寫(xiě),需安裝語(yǔ)言庫(kù)才能運(yùn)行RabbitMQ代理服務(wù)器。AMQP:高級(jí)消息隊(duì)列協(xié)議。...
    JAVA覓音閣閱讀 4,018評(píng)論 0 7
  • RabbitMQ 原理介紹及安裝部署 標(biāo)簽:RabbitMQ 安裝 簡(jiǎn)介 RabbitMQ 是一個(gè)用 Erlang...
    神仙CGod閱讀 8,727評(píng)論 0 60
  • 來(lái)源 RabbitMQ是用Erlang實(shí)現(xiàn)的一個(gè)高并發(fā)高可靠AMQP消息隊(duì)列服務(wù)器。支持消息的持久化、事務(wù)、擁塞控...
    jiangmo閱讀 10,513評(píng)論 2 34

友情鏈接更多精彩內(nèi)容