很久以前,就已經在項目中使用RabbitMQ了,但是就是這麼糊里糊塗的用着,按照別人的寫好的模板,修改幾個參數就好了,實際上對RabbitMQ並不瞭解多少,所以打算從下載安裝開始,慢慢了解RabbitMQ。
一 RabbitMQ是什麼?
RabbitMQ 是一個由erlang開發的AMQP(Advanced
Message Queue )的開源實現,RabbitMQ的官網是 http://www.rabbitmq.com
二 RabbitMQ能幫助我們做什麼?
1)幫助信息的發送者和接收者如何維持這個連接。
2)降低發送者和接收者的耦合度。
3)讓Priority高的接收者先接到數據。
4)做到load balance。
5)有效的將數據發送到相關的接收者。
6)做到可擴展,甚至將這個通信模塊發到cluster上。
7)保證接收者接收到了完整,正確的數據。
三 RabbitMQ該怎麼用?
安裝RabbitMQ之前我們先來安裝erlang,具體見 http://www.erlang-cn.com/55.html,這裏就不演示了。
接下來我們就來下載以及安裝 RabbitMQ.
1) 從RabbitMQ 官網 下載對應的版本 (http://www.rabbitmq.com/download.html)
wget
http://www.rabbitmq.com/releases/rabbitmq-server/v3.5.1/rabbitmq-server-generic-unix-3.5.1.tar.gz
2)解壓安裝
tar zxvf rabbitmq-server-generic-unix-3.5.1.tar.gz
mv rabbitmq_server-3.5.1/ /usr/local/rabbitmq-3.5.1/
cd
/usr/local/rabbitmq-3.5.1
./sbin/rabbitmq-server -detached
就這樣我們的消息隊列已經跑起來了,是不是很簡單.
如果出現 ERROR: epmd error for host "****": timeout (timed out establishing tcp connection) 說明你主機名和ip不匹配了,需要更改/etc/hosts
IP HOSTNAME
3)開啓管理的插件。
./sbin/rabbitmq-plugins enable rabbitmq_management
再訪問 http://server-name:15672就可以管理界面了,我的是 http://192.168.8.179:15672, 默認賬戶密碼爲guest guest,我們登錄的時候可能會報錯 HTTP
access denied: user ‘guest’ – User can only log in via localhost。
這是因爲rabbitmq從3.3.0開始禁止使用guest/guest權限通過除localhost外的訪問。如果想使用guest/guest通過遠程機器訪問,需要在rabbitmq配置文件中 (/etc/rabbitmq/rabbitmq.config)中設置loopback_users爲[]。./etc/rabbitmq/rabbitmq.config(需要自己建)文件完整內容如下(注意後面的半角句號):
1
|
[{rabbit, [{loopback_users, []}]}].
|
到這裏我們就把rabbitmq安裝好了。