中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

RabbitMQ的應用示例

發布時間:2021-08-23 15:24:27 來源:億速云 閱讀:207 作者:小新 欄目:編程語言

這篇文章主要為大家展示了“RabbitMQ的應用示例”,內容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領大家一起研究并學習一下“RabbitMQ的應用示例”這篇文章吧。

雖然后臺使用了讀寫分離技術,能夠在一定程度上抗擊高并發,但是如果并發量特別巨大時,主數據庫不能同時處理高并發的請求,這時數據庫容易宕機。

問題:

現在的問題是如何既能保證數據庫正常運行,又能實現用戶數據的入庫操作?

解決方案:

引入rabbitMQ技術:

RabbitMQ的應用示例

說明:

當數據庫的訪問壓力過載時,這時會將過載以后的數據先保存到rabbitMQ中。其中的數據結構是隊列的形式,先進先出。這時數據庫從隊列中取數據執行。一直到隊列中的數據全部操作完成為止。

RabbitMQ就是消息的中間件。

RabbitMQ介紹:

RabbitMQ的應用示例

RabbitMQ性能分析:

RabbitMQ的應用示例

1.MSMQ:是微軟的產品 應用于.net框架

2.ActiveMQ:是apache的產品 做業務用圖廣泛

3.RabbitQM:是愛立信的產品(早期手機生產廠商)基于erlang語言(函數式編程大數據 scala語言)

4.ZeroMQ:大數據中應用廣泛,缺點容易丟失數據.但是業務系統中使用率較少

5.KafkaMQ:大數據項目中使用,50萬/秒 現在主流

5.RabbitMQ環境搭建:

1.配置JDK:

2.固定虛擬機IP地址:

RabbitMQ的應用示例

3.連接虛擬機:

編輯文件跳轉路徑:

Vim go

Cd /usr/local/src

2.安裝rabbitMQ:

1.新建文件rabbitmq

/usr/local/src/rabbitmq

2.將安裝文件導入

RabbitMQ的應用示例

3.安裝rabbitMQ

RabbitMQ的應用示例

4.開啟遠程用戶訪問:

將文件復制到指定目錄下:

cp /usr/share/doc/rabbitmq-server-3.6.1/rabbitmq.config.example /etc/rabbitmq/rabbitmq.config

修改新復制的文件64行

RabbitMQ的應用示例

1.將%%去掉

2.將,號去掉

修改為:

RabbitMQ的應用示例

5.開啟rabbitMQ:

執行命令:

rabbitmq-plugins enable rabbitmq_management

RabbitMQ的應用示例

表示啟動成功

6.開放端口15672和5672

iptables -I INPUT -p tcp --dport 15672 -j ACCEPT

訪問rabbitMQ的控制臺

iptables -I INPUT -p tcp --dport 5672 -j ACCEPT

程序連接rabbitMQ的端口

或者關閉防火墻

7.啟動/停止服務

service rabbitmq-server start 啟動

service rabbitmq-server stop 停止

service rabbitmq-server restart 重啟

RabbitMQ的應用示例

8.遠程登錄:

訪問:

http://192.168.154.137:15672/

用戶名和密碼都是guest

RabbitMQ的應用示例

9.視圖解析:

RabbitMQ的應用示例

10.建立管理員:

RabbitMQ的應用示例

11.構建虛擬主機:

RabbitMQ的應用示例

RabbitMQ的應用示例

11.構建虛擬主機:

RabbitMQ的應用示例

RabbitMQ的應用示例

RabbitMQ的應用示例

6.rabbitMQ的工作模式:

1.簡單模式:

RabbitMQ的應用示例

p:proverder 生產者

c:consumer 消費者

紅色部分:隊列 先進先出

原理說明:

生產者負責向隊列中添加消息.消費者負責消費隊列中的消息.

消費者通過監聽器,實時監控消息隊列.如果消息隊列中有消息則消費,如果沒有消息 則等待消息.

2.測試代碼:

1.定義Connection

RabbitMQ的應用示例

1.1.定義生產者

RabbitMQ的應用示例

RabbitMQ的應用示例

3.定義消費者:

RabbitMQ的應用示例

2.工作模式:

RabbitMQ的應用示例

原理說明:

生產者為消息隊列中生產消息,多個消費者爭搶執行權利,誰搶到誰執行.

實用場景:秒殺業務 搶紅包等

測試代碼:

RabbitMQ的應用示例

3.發布訂閱模式:

RabbitMQ的應用示例

x:exchange 交換機

P:表示生產者

C1-2:表示多個消費者

原理說明:

當生產者生產消息后,先將消息發往交換機.交換機再將消息發往訂閱了當前消息的隊列,再次有各個隊列的消費者執行.

類似于 廣播

RabbitMQ的應用示例

定義消費者::

RabbitMQ的應用示例

4.路由模式:

RabbitMQ的應用示例

x:表示交換機 type=direct 表示路由

路由模式中,需要定義路由key

原理說明:

1.當生產者發布消息時,會定義指定的路由key 例如 key:error

2.這時交換機會根據路由key發往滿足條件的隊列中.如果隊列中沒有符合條件的路由key將不能執行該消息.

5.主題模式:

RabbitMQ的應用示例

Type:topic 表示主題模式

  • * (star) can substitute for exactly one word.

  • # (hash) can substitute for zero or more words.

  • 有坑 效果一樣

7.訂單實現RabbitMQ

1.引入配置文件:

classpath:jdbc.propertiesclasspath:env.properties /hp月n、 口山閏廷比二曰站叩四瞿二月當“習 classpath:rabbitmq.properties IUe> /value>" v:shapes="圖片_x0020_42">

2.引入生產者

1.引入配置文件

RabbitMQ的應用示例

2.定義發送端

RabbitMQ的應用示例

3.發送端代碼

通過代碼相rabbitmq中發送數據

RabbitMQ的應用示例

RabbitMQ的應用示例

4.定義接收端:

引入配置文件

RabbitMQ的應用示例

5.定義接收端:

RabbitMQ的應用示例

6.測試成功

以上是“RabbitMQ的應用示例”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

贺州市| 巴林右旗| 什邡市| 津南区| 尼勒克县| 白银市| 宁海县| 峨山| 泰和县| 柳河县| 高要市| 屯门区| 崇文区| 年辖:市辖区| 乌拉特中旗| 甘洛县| 安国市| 东丰县| 婺源县| 新津县| 蕉岭县| 丽江市| 青神县| 北流市| 民权县| 南平市| 永济市| 夏河县| 大渡口区| 临清市| 夏邑县| 务川| 大邑县| 锦州市| 南宁市| 家居| 洛川县| 亳州市| 宜君县| 偃师市| 白玉县|