rabbitMQ的入門教程

歡迎使用rabbitMQ消息隊列

以下全是自己的理解寫出,大概看了二十分鐘項目,原理跟kafka消息中間件類似其實每個消息中間件的原理都是很類似的,有興趣可以看看kafka消息隊列。

  • 安裝rabbit
  • 簡單的生產者消費者模式

安裝rabbit

rabbit的安裝就不說了,安裝好之後它將是以一個服務的方式存在,不然也不叫消息中間件了,直接上教程
https://www.cnblogs.com/ericli-ericli/p/5902270.html

簡單的生產者消費者模式

rabbit大概原理:生產者—>exchange–>消費者(生產者往隊列裏面丟消息,消費者從隊列裏面拿東西,這其中有個叫交換器的東西(exchange),生成這綁定好交換器,消費者把隊列綁定到該交換器上,那麼他們就成了點對點的消息生成和消費模型了

一、我們先來熟悉幾個名詞:1)channel 信道是生產消費者與rabbit通信的渠道。
2)exchange交換機的作用就是類似路由器,routing key 就是路由鍵,服務器會根據路由鍵將消息從交換器路由到隊列上去找。
3)direct:完全匹配,根據routing key去匹配隊列
4)fanout:可以把消息散佈到多個queue上去
5)topic:模糊匹配,多個交換器可以路由消息到同一個隊列。根據模糊匹配,比如一個隊列的routing key 爲*key,就會找routing key爲key結尾的路由鍵再找到綁定的queue
6)AmqpTemplate:Spring AMQP提供了一個發送和接收消息的操作模板類AmqpTemplate。 AmqpTemplate它定義包含了發送和接收消息等的一些基本的操作功能。RabbitTemplate是AmqpTemplate的一個實現。
這裏說下交換器exchange的三個模式:direct和topic都需要用到routing key 而fanout則不需要。

二、下面生產者的demo代碼
這裏寫圖片描述
這裏寫圖片描述
下面是消費者的demo
客戶端可以指定多個rabbit服務,相當於從可以指定特定服務上獲取queue的消息
這裏寫圖片描述
這裏寫圖片描述
這裏寫圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章