RabbitMQ學習筆記(1)----RabbitMQ簡介與安裝
·1. 什麼是RabbitMQ?
RabbitMQ是流行的開源訊息佇列系統,用erlang語言開發。RabbitMQ是AMQP(高階訊息佇列協議)的標準實現。
而AMQP協議則是指:即Advanced Message Queuing Protocol,一個提供統一訊息服務的應用層標準高階訊息佇列協議,是應用層協議的一個開放標準,為面向訊息的中介軟體設計。基於此協議的客戶端與訊息中介軟體可傳遞訊息,並不受客戶端/中介軟體不同產品,不同的開發語言等條件的限制。
結構圖如下:
RabbitMQ有幾個重要的概念,如下:
Broker:簡單來說就是訊息佇列伺服器實體。
Exchange:訊息交換機,它指定訊息按什麼規則,路由到哪個佇列。
Queue:訊息佇列載體,每個訊息都會被投入到一個或多個佇列。
Binding:繫結,它的作用就是把exchange和queue按照路由規則繫結起來。
Routing Key:路由關鍵字,exchange根據這個關鍵字進行訊息投遞。
vhost:虛擬主機,一個broker裡可以開設多個vhost,用作不同使用者的許可權分離。
producer:訊息生產者,就是投遞訊息的程式。
consumer:訊息消費者,就是接受訊息的程式。
channel:訊息通道,在客戶端的每個連線裡,可建立多個channel,每個channel代表一個會話任務。2. windows下安裝RabbitMQ
由於RabbitMQ 是建立在Erlang OTP平臺上的,所以在安裝RabbitMQ之前,我們需要先安裝Erlang
下載Erlang:http://www.erlang.org/downloads,選擇適合的版本進行下載,如圖:
下載完成後,點選安裝,一路next即可(推薦預設安裝,避免出現安裝失敗)。安裝完成之後,配置環境變數(如果沒有自動配置環境變數的話),如下如
變數名:ERLANG_HOME
變數值:D:\JavaDevSoft\Middleware\Erlang\erl10.1
將ERLANG_HOME加入到path中:如圖:
然後按住windows+r鍵,輸入cmd,開啟cmd視窗,輸入erl命令,如果出現如下視窗,則表示Erlang安裝成功。
接著安裝RabbitMQ,此時到官網:http://www.rabbitmq.com/download.html下載需要的版本的RabbitMQ。如下圖:
這裡依然一路next即可(推薦預設安裝,避免出現安裝失敗)。
安裝完成後,進入到安裝目錄下的sbin目錄下:
如圖:
使用管理員開啟cmd(這裡需要注意的是使用者名稱必須為英文),
執行如下命令:rabbitmq-plugins.bat enable rabbitmq_management,出現如下資訊。
此時可以訪問:http://localhost:15672/#/,出現如下介面:
預設使用者名稱guest/guest,這個RabbitMQ中的最高管理員許可權,點選登陸,如果能夠成功,出現如下介面,則表示這個RabbitMQ安裝成功
3. 在控制檯新增使用者
點選Admin,如下:
這裡添加了一個wangx的使用者,但是我們這裡最開始是沒有virtual host的,我們需要建立一個,如圖:
這裡的virtual hosts一般寫成/name的形式。
然後點選新建的主機名,進入,如下:
這樣基本的準備工作就做完了。
管理介面的各個功能如下: