介紹
- RabbitMQ是一種基於AMQP(高級消息隊列協議)的消息中間件。
- 分爲消息生產者、消費者
- 服務端是一個broker,裏面就是一個虛擬主機,虛擬主機裏面有三種交換機和綁定的隊列
- 直連、主題、廣播三種交換機,根據關鍵字單詞匹配
安裝
安裝比較繁瑣,因爲RabbitMQ是基於Erlang語言編寫的,需要安裝那個語言的環境,類似安裝Tomcat需要安裝JDK。
可以去官網下載最新包或者源碼安裝,以下直接使用shell自帶的源安裝,估計會有些老版本,後期配置麻煩點。
- 安裝Erlang語言環境
sudo apt-get install erlang-nox
- 安裝RabbitMQ
sudo apt update
sudo apt install rabbitmq-server
啓動使用
sudo rabbitmq-server start
但是剛剛安裝完已經啓動了,會報錯
ERROR: node with name "rabbit" already running on "chgl16-laptop"
使用restart也一樣報這個錯誤。解決方法使用top查看到rabbitmq進程把它sudo kill pid,再啓動即可
成功啓動後如下
chgl16@chgl16-laptop:~$ sudo rabbitmq-server restart
RabbitMQ 3.6.10. Copyright (C) 2007-2017 Pivotal Software, Inc.
## ## Licensed under the MPL. See http://www.rabbitmq.com/
## ##
########## Logs: /var/log/rabbitmq/[email protected]
###### ## /var/log/rabbitmq/[email protected]
##########
Starting broker...
completed with 0 plugins.
打開默認localhost:15672 打不開,可以看到上面完成了0個插件,就是因爲插件沒有配置加載造成的。
使用如下命令加載命令,記得使用權限,不然報錯
sudo rabbitmq-plugins enable rabbitmq_management
命令可以打出前面一部分然後雙擊tab鍵,會顯示可用的匹配命令。
重啓成功