階段5 3.微服務項目【學成在線】_day05 消息中間件RabbitMQ_9.RabbitMQ研究-工做模式-發佈訂閱模式-消費者

消費者須要寫兩個消費者測試

定義郵件的類


複製之前的代碼到郵件類裏面進行修改

最上面 聲明隊列的名稱和交換機的名稱

監聽修改成email 的隊列的名稱
3d

手機短信接收端

複製一份email的接收端的代碼 更名叫作sms


隊列的名稱改爲短信的隊列名稱

blog

啓動程序測試

先啓動生產者

生產者啓動後就發送了5條消息出去


能夠看到咱們新建的交換機

點擊交換機進來,顯示綁定了兩個隊列


咱們的代碼Routing Key設置的爲空


能夠看到每一個隊列都有5條消息
隊列

啓動消費者,啓動email的消費者


email消費者讀取了5條消息

此時隊列裏面已經沒有了 消息
進程

啓動手機短信消費者

也讀取了5條消息
email

總結

交換機這裏綁定兩個對列

一個連接裏面能夠建多個通道。


咱們啓動了兩個進程 就佔兩個連接


每一個鏈接裏面都有一個通道

點開第一個通道。通道里面顯示有一個消費者,這是消費者的標籤。

消費者標籤因爲咱們指定,因此就是一個隨即的號

消費者就有綁定隊列


另一個通道綁定的是手機短信的隊列
程序

從新運行生產者的程序



兩個消費者分別都接收到了這5條消息

im

發佈訂閱能夠實現工做隊列模式



工做隊列的模式是,多個消費者監聽一個隊列。
咱們能夠再去建立一個隊列c3去監聽c1的隊列。

手機短信的隊列已經啓動起來了

再啓動一個手機短信的隊列



如今就有三個通道

啓動兩個通道是監聽短信的

d3

再次發送消息



email只有一個監聽 因此接收到了5條

短信的有兩個監聽,因此是輪詢的方式

一個監聽短信的收到 了3條 另一個個收到了兩條。


發佈訂閱徹底具有了工做隊列的模式,比工做隊列的模式更增強大總結

相關文章
相關標籤/搜索