更新時間:2021-01-05 16:04:09 來源:動力節點 瀏覽1235次
RabbitMQ是流行的開源消息隊列系統,用erlang語言開發,RabbitMQ是AMQP(高級消息隊列協議)的標準實現。采用該技術,我們可以實現異步處理、流量削峰、系統解耦。
什么是消息隊列(MQ)
消息是在不同應用間傳遞的數據。這里的消息可以非常簡單,比如只包含字符串,也可以非常復雜,包含多個嵌套的對象。消息隊列(Message Queue)簡單來說就是一種應用程序間的通訊方式,消息發送后立即返回,然后由消息系統保證消息的可靠性傳輸,消息生產者只需要把消息發到MQ中就可以了,不需要關心消息的消費,同樣,消息消費者只管從MQ中拉取消息而不管是誰生產的消息,通過這樣的一個“互相不知道對象存在”模式,將消息的生產者和消息的消費者解耦了。
什么場景下考慮使用消息隊列
從上面可以知道,消息隊列是一種應用間的異步協作機制,那么我們什么時候需要用到MQ呢?以常見的訂單系統為例,當用戶點擊「下單」后的業務邏輯可能包括:扣減庫存、生成相應訂單數據、發短信通知等。在項目和業務發展初期上面這些邏輯可能放在一起執行,隨著業務的發展訂單量的增加,需要提升系統服務的性能,此時就可以將一些不需要立即生效的操作拆分出來異步執行,比如發送短信通知等。這種場景下就可以使用MQ,在下單主流程(比如扣減庫存、生成訂單數據等)完成之后發送一條消息到MQ讓主流程快速走完,然后由另外一個線程拉取MQ的消息,執行相應的業務邏輯。這里的例子主要是用消息隊列來解耦。
RabbitMQ的特點
RabbitMQ是一個由Erlang語言開發的AMQP的開源實現。AMQP(Advanced Message Queue:高級消息隊列協議)它是應用層協議的一個開放標準,為面向消息的中間件設計,基于此協議的客戶端與消息中間件可傳遞消息,并不受產品、開發語言等條件的限制。RabbitMQ最初起源于消息系統,用于在分布式系統中存儲轉發消息,具體有如下一些特點:
可靠性:RabbitMQ使用一些機制來保證可靠性,比如持久化、傳輸確認機制(ack)和發布確認等。
靈活的路由策略:在消息進入隊列之前,通過Exchange來路由消息,對于典型的路由功能,RabbitMQ已經提供了一些內置的Exchange來實現。針對復雜的路由功能,可以將多個Exchange綁在一起,也通過插件機制實現自己的Exchange。
消息集群:多個RabbitMQ服務器可以組成一個集群,形成一個邏輯Broker。
高可用:隊列可以在集群中的集群上進行鏡像,使得在部分節點出問題的情況下隊列仍然可用。
多種協議:RabbitMQ支持多種消息隊列協議,比如STOMP、MQTT等。
多語言客戶端:RabbitMQ幾乎支持多有常用的語言,比如:Java、.NET等
管理界面:RabbitMQ提供了一個易用的用戶界面,使得用戶可以監控和管理消息Broker的許多方面。
零基礎學習RabbitMQ入門教程,動力節點的教學課程將講授RabbitMQ的環境搭建、消息的發送與接收、消息確認、與SpringBoot集成等,讓大家快速掌握RabbitMQ技術,以適應項目開發的需要;
課程學習目錄
1.RabbitMQ:什么是消息隊列
2.RabbitMQ:為什么使用消息隊列
3.RabbitMQ:RabbitMQ的特點
4.RabbitMQ:安裝RabbitMQ
5.RabbitMQ:啟動和關閉服務
6.RabbitMQ:插件添加
7.RabbitMQ:用戶管理
8.RabbitMQ:權限分配
9.RabbitMQ:vhost
10.RabbitMQ:AMQP協議機制
11.RabbitMQ:消息路由交換機類型
12.RabbitMQ:Direct類型交換機
13.RabbitMQ:Fanout類型交換機
14.RabbitMQ:Topic類型交換機
15.RabbitMQ:消息發送
16.RabbitMQ:消息發送測試
17.RabbitMQ:消息接收
18.RabbitMQ:消息接收測試
19.RabbitMQ:交換機-direct-消息接收
20.RabbitMQ:交換機-direct-消息發送
21.RabbitMQ:交換機-fanout-消息接收
22.RabbitMQ:交換機-fanout-消息發送
23.RabbitMQ:交換機-topic-消息接收和發送
完整目錄可以關注動力節點Java視頻教程
以上就是動力節點Java培訓機構的小編針對“Rabbitmq視頻下載,零基礎入門學習”的內容進行的回答,希望對大家有所幫助,如有疑問,請在線咨詢,有專業老師隨時為你服務。
0基礎 0學費 15天面授
有基礎 直達就業
業余時間 高薪轉行
工作1~3年,加薪神器
工作3~5年,晉升架構
提交申請后,顧問老師會電話與您溝通安排學習