最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

docker安裝RabbitMQ及安裝延遲插件的詳細(xì)過程

 更新時(shí)間:2022年06月06日 08:41:13   作者:運(yùn)城張國(guó)榮  
MQ(message queue)字面意思上來說消息隊(duì)列,是一種跨進(jìn)程的通信機(jī)制,用于上下游傳遞消息,本文給大家詳細(xì)介紹docker安裝RabbitMQ及安裝延遲插件的過程,感興趣的朋友一起看看吧

我這個(gè)安裝攻略首先得保證服務(wù)器上安裝過docker了 如果沒安裝docker請(qǐng)先去安裝docker

1.首先說一下什么是MQ

MQ(message queue)字面意思上來說消息隊(duì)列,F(xiàn)IFO先入先出,隊(duì)列中存入的內(nèi)容是message,是一種跨進(jìn)程的通信機(jī)制,用于上下游傳遞消息。MQ 是一種非常常見的上下游“邏輯解耦+物理解耦”的消息通信服務(wù)。使用了 MQ 之后,消息發(fā)送上游只需要依賴 MQ,不用依賴其他服務(wù)。

1.1為什么要用MQ/MQ有什么用

1.1.1流量消峰

比如說訂單系統(tǒng)最多一次可以處理一萬次訂單,這個(gè)處理能力在正常時(shí)段下單時(shí)綽綽有余,但是在高峰期時(shí)如果有兩萬次下單操作系統(tǒng)是處理不了的只能限制訂單超過一萬次后不允許用戶下單,但是如果使用消息隊(duì)列做緩沖,我們可以取消這個(gè)限制,把一米內(nèi)的訂單分散成一段時(shí)間來處理,這個(gè)時(shí)候有些用戶可能在下單十幾秒后才能收到下單成功消息 但是這樣總比不能讓用戶下單體驗(yàn)好

1.1.2應(yīng)用解耦

以電商應(yīng)用為例,應(yīng)用中有訂單系統(tǒng)、庫(kù)存系統(tǒng)、物流系統(tǒng)、支付系統(tǒng)。用戶創(chuàng)建訂單后,如果耦合調(diào)用庫(kù)存系統(tǒng)、物流系統(tǒng)、支付系統(tǒng),任何一個(gè)子系統(tǒng)出了故障,都會(huì)造成下單操作異常。當(dāng)轉(zhuǎn)變成基于消息隊(duì)列的方式后,系統(tǒng)間調(diào)用的問題會(huì)減少很多,比如物流系統(tǒng)因?yàn)榘l(fā)生故障,需要幾分鐘來修復(fù)。在這幾分鐘的時(shí)間里,物流系統(tǒng)要處理的內(nèi)存被緩存在消息隊(duì)列中,用戶的下單操作可以正常完成。當(dāng)物流系統(tǒng)恢復(fù)后,繼續(xù)處理訂單信息即可,中單用戶感受不到物流系統(tǒng)的故障,提升系統(tǒng)的可用性

1.1.3異步處理

有些服務(wù)間調(diào)用是異步的,例如 A 調(diào)用 B,B 需要花費(fèi)很長(zhǎng)時(shí)間執(zhí)行,但是 A 需要知道 B 什么時(shí)候可以執(zhí)行完,一般有兩種方式,A 過一段時(shí)間去調(diào)用 B 的查詢 api 查詢?;蛘?A 提供一個(gè) callbackB 執(zhí)行完之后調(diào)用 api 通知 A 服務(wù)。這兩種方式都不是很優(yōu)雅,使用消息總線,可以很方便解決這個(gè)問題,A 調(diào)用 B 服務(wù)后,只需要監(jiān)聽 B 處理完成的消息,當(dāng) B 處理完成后,會(huì)發(fā)送一條消息給 MQ,MQ 會(huì)將此消息轉(zhuǎn)發(fā)給 A 服務(wù)。這樣 A 服務(wù)既不用循環(huán)調(diào)用 B 的查詢 api,也不用提供 callback同樣 B 服務(wù)也不用做這些操作。A 服務(wù)還能及時(shí)的得到異步處理成功的消息。

2.安裝RabbitMq

接下來使用docker進(jìn)行RabbitMQ的安裝

2.1首先拉取鏡像

直接拉取鏡像的話默認(rèn)拉取最新的版本

docker pull rabbitmq:management

2.2啟動(dòng)鏡像

注意修改用戶名和密碼

docker run -d -p 15672:15672 -p 5672:5672 \
	-e RABBITMQ_DEFAULT_VHOST=my_vhost  \
	-e RABBITMQ_DEFAULT_USER=admin \
	-e RABBITMQ_DEFAULT_PASS=admin \
	--hostname myRabbit \
	--name rabbitmq \
	rabbitmq

參數(shù)說明:

  • -d:表示在后臺(tái)運(yùn)行容器;
  • -p:將容器的端口 5672(應(yīng)用訪問端口)和 15672 (控制臺(tái)Web端口號(hào))映射到主機(jī)中;
  • -e:指定環(huán)境變量:
  • RABBITMQ_DEFAULT_VHOST:默認(rèn)虛擬機(jī)名;
  • RABBITMQ_DEFAULT_USER:默認(rèn)的用戶名;
  • RABBITMQ_DEFAULT_PASS:默認(rèn)的用戶密碼;
  • --hostname:指定主機(jī)名(RabbitMQ 的一個(gè)重要注意事項(xiàng)是它根據(jù)所謂的 節(jié)點(diǎn)名稱 存儲(chǔ)數(shù)據(jù),默認(rèn)為主機(jī)名);
  • --name rabbitmq:設(shè)置容器名稱;
  • rabbitmq:容器使用的鏡像名稱;

啟動(dòng)完成后可以通過 docker ps 命令來查看容器是否啟動(dòng)
還可以設(shè)置docker啟動(dòng)時(shí)自動(dòng)啟動(dòng)

docker update rabbitmq --restart=always

2.3啟動(dòng) rabbitmq_management (RabbitMQ后臺(tái)管理)

//進(jìn)入容器內(nèi)部  我這里使用容器名字進(jìn)入 也可以使用容器id
docker exec -it rabbitmq /bin/bash
----------------------------------
//開啟web后臺(tái)管理界面
rabbitmq-plugins enable rabbitmq_management

2.3.1打開RabbitMQweb界面

  1. 瀏覽器輸入地址 hhtp://ip:15672 即可訪問后臺(tái)管理界面 這里的ip為運(yùn)行RabbitMQ的服務(wù)器ip
  2. 默認(rèn)的用戶名和密碼都是guest
  3. 但由于我們啟動(dòng)的時(shí)候設(shè)置了默認(rèn)的用戶名和密碼,所以我們可以使用設(shè)置的用戶名和密碼登錄。

如果無法訪問 可以嘗試打開防火墻 如果是在阿里或者騰訊之類的服務(wù)器 要打開安全組的端口?。?br />到這里 我們docker安裝RabbitMQ就完成了 接下來進(jìn)行延遲插件的安裝

3.插件下載并安裝

下載地址 https://www.rabbitmq.com/community-plugins.html

進(jìn)入web端后左上角有顯示當(dāng)前安裝的RabbitMQ版本

我這里安裝的是3.10版本所以我直接下載最新版的插件就可以

安裝完成后用工具將插件文件上傳到服務(wù)器上

將剛剛上傳的插件拷貝到容器內(nèi)plugins目錄下

docker cp /root/rabbitmq_delayed_message_exchange-3.10.2.ez rabbitmq:/plugins

上傳之后進(jìn)入容器內(nèi)部

//進(jìn)入容器 我這里使用容器名字 也可以用容器id進(jìn)入
docker exec -it rabbitmq /bin/bash
-------------------------------------
//移動(dòng)到plugins目錄下
cd plugins
-------------------------------------
//查看是否上傳成功
ls

然后我們啟動(dòng)插件

rabbitmq-plugins enable rabbitmq_delayed_message_exchange

安裝成功后 退出容器

exit

然后重啟容器

//我這里還是使用容器名稱 也可以使用容器id
docker restart rabbitmq

容器啟動(dòng)成功之后,登錄RabbitMQ的管理界面(ip:15672 訪問web界面),找到ExchangesTab頁。點(diǎn)擊Add a new exchange,在Type里面查看是否有x-delayed-message選項(xiàng),如果存在就代表插件安裝成功。

到這里我們的docker 安裝RabbitMQ及延遲插件的安裝就已經(jīng)結(jié)束了??!

到此這篇關(guān)于docker安裝RabbitMQ及安裝延遲插件的文章就介紹到這了,更多相關(guān)docker安裝RabbitMQ內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Docker 制作鏡像Dockerfile和commit操作

    Docker 制作鏡像Dockerfile和commit操作

    這篇文章主要介紹了Docker 制作鏡像Dockerfile和commit操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2020-11-11
  • 基于alpine用dockerfile創(chuàng)建的tomcat鏡像的實(shí)現(xiàn)

    基于alpine用dockerfile創(chuàng)建的tomcat鏡像的實(shí)現(xiàn)

    這篇文章主要介紹了基于alpine用dockerfile創(chuàng)建的tomcat鏡像的實(shí)現(xiàn),小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2018-12-12
  • 解決docker pull鏡像速度慢的問題的方法

    解決docker pull鏡像速度慢的問題的方法

    本篇文章主要介紹了解決docker pull鏡像速度慢的問題的方法,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2017-11-11
  • 用Docker快速構(gòu)建LEMP環(huán)境的方法示例

    用Docker快速構(gòu)建LEMP環(huán)境的方法示例

    這篇文章主要介紹了用Docker快速構(gòu)建LEMP環(huán)境的方法示例,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2019-02-02
  • Docker快速安裝Zookeeper的詳細(xì)教程

    Docker快速安裝Zookeeper的詳細(xì)教程

    這篇文章主要介紹了Docker快速安裝Zookeeper,不清楚如何搭建docker的朋友可以參考下本文
    2021-06-06
  • Docker下部署MinIO存儲(chǔ)服務(wù)通過Buckets實(shí)現(xiàn)文件的遠(yuǎn)程上傳功能

    Docker下部署MinIO存儲(chǔ)服務(wù)通過Buckets實(shí)現(xiàn)文件的遠(yuǎn)程上傳功能

    MinIO是一個(gè)開源的軟件,可以免費(fèi)使用,還可以在普通硬件上運(yùn)行,降低了存儲(chǔ)成本,下面介紹在本地Docker中部署?MinIO?服務(wù),并實(shí)現(xiàn)遠(yuǎn)程訪問管理界面,節(jié)約云服務(wù)器運(yùn)行成本,感興趣的朋友跟隨小編一起看看吧
    2024-01-01
  • docker容器添加對(duì)外映射端口的實(shí)現(xiàn)

    docker容器添加對(duì)外映射端口的實(shí)現(xiàn)

    本文主要介紹了docker容器添加對(duì)外映射端口的實(shí)現(xiàn) ,從而實(shí)現(xiàn)容器與外部網(wǎng)絡(luò)的通信,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-09-09
  • 教你如何將應(yīng)用從docker-compose遷移到k8s中

    教你如何將應(yīng)用從docker-compose遷移到k8s中

    這篇文章主要介紹了如何將應(yīng)用從docker-compose遷移到k8s中,本文給大家分享一個(gè)專門的遷移工具,可方便地通過docker-compose.yaml自動(dòng)生成k8s的yaml部署文件,本文給大家介紹的非常詳細(xì),需要的朋友可以參考下
    2022-07-07
  • 云原生Docker創(chuàng)建并進(jìn)入mysql容器的全過程

    云原生Docker創(chuàng)建并進(jìn)入mysql容器的全過程

    前面我們已經(jīng)安裝好了Docker,也簡(jiǎn)單了解了Docker,下面這篇文章主要給大家介紹了關(guān)于云原生Docker創(chuàng)建并進(jìn)入mysql容器的相關(guān)資料,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2023-02-02
  • nginx在docker容器中自動(dòng)生成配置文件

    nginx在docker容器中自動(dòng)生成配置文件

    這篇文章主要介紹了nginx在docker容器中自動(dòng)生成配置文件,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-06-06

最新評(píng)論

乐山市| 津市市| 历史| 亚东县| 南安市| 长武县| 扎赉特旗| 北辰区| 漳平市| 楚雄市| 昌江| 固阳县| 滨海县| 闽侯县| 襄城县| 溆浦县| 桃源县| 津市市| 威海市| 理塘县| 福贡县| 紫金县| 肥西县| 滁州市| 长乐市| 玛沁县| 庆城县| 万山特区| 万盛区| 浦东新区| 尤溪县| 兴义市| 龙口市| 垫江县| 阜新市| 揭东县| 靖州| 东辽县| 河池市| 沙河市| 聊城市|