消息中間件的好處:
1,異步,提高傳輸速度
2,應用解耦。提高系統效率
3,流量閾值控制,避免所有用戶請求可能在同一時間到達系統后台
Exchange(交換器): 用來接受消息並且消息路由給服務器中的隊列,有四種類型,即決定消息發布到那個隊列,具體有以下的類型:
Direct:消息中的路由鍵(routingkey),如果和Binding中的binding key 一致,那么就將消息發到對應的隊列中。
Fanout: 廣播模式,每個發送到fanout類型的交換器消息,交換器會將消息發送到它綁定的所有隊列中,它轉發消息是最快的。
Topic:主題,可以設置模糊匹配,會識別"#"和"*"號,#表示匹配0個或者多個單詞,*匹配一個單詞,單詞之間使用:逗號隔開。
headers:實現發布訂閱模型。
Binding(綁定): 用於消息隊列和交換器之間的關聯,一個綁定就是基於路由鍵將交換機和消息隊列連接起來的路由規則,交換器跟隊列的綁定可以是多對多的關系
Channel(信道): 多路復用連接中的一條獨立的雙向數據流通道,信道是建立在真實的TCP連接內的虛擬通道,AMQP命令都是通過信道發出去的,不管是發布消息,訂閱隊列,還是接收消息,都是通過信道完成,因為對於操作系統來說創建和銷毀一個TCP連接都是很昂貴的開銷,所以使用信道以實現復用一條TCP連接。
cmd命令查詢當前消息隊列:進入rabbit_server的sbin目錄后輸入rabbitmqctl.bat list_queues
rabbitmq服務啟動停止:win+R -->services.msc找到rabbitmq即可