SpringBoot2.x系列教學64--訊息佇列之RabbitMQ安裝及環境變數設定

2020-08-12 14:56:28

一. 準備安裝包

Erlang-->http://www.erlang.org/downloads

RabbitMQ-->https://github.com/rabbitmq/rabbitmq-server/releases

二. 安裝erlang

1. 雙擊圖示開始安裝

2. 設定ErLang環境變數

  • 新增一個系統變數 ERLANG_HOME,設定爲 Erlang 的安裝目錄,比如我的安裝目錄爲: C:\Program Files\erl9.3 ;
  • 然後在 Path 系統變數中加上 %ERLANG_HOME%\bin

3. 驗證

在cmd命令下輸入:erl
能夠返回版本號則表示安裝與設定環境變數成功.

三. 安裝RabbitMQ

如果你要安裝其它版本,注意版本要與ErLang對應: https://www.rabbitmq.com/which-erlang.html

1. 雙擊圖示開始安裝

 

2. 設定環境變數

  • 新增 一個系統變數RABBITMQ_SERVER,設定爲RabbitMQ 的安裝目錄,如我放置的目錄爲C:\Program Files\RabbitMQ Server\rabbitmq_server-3.7.5
  • 在 Path 系統變數末尾新增 %RABBITMQ_SERVER%\sbin

3. 驗證

開啓cmd視窗,輸入:rabbitmq-service


如有輸出 以上 rabbitmq 命令的解釋資訊即表示安裝成功.

4. 安裝服務

可以把RabbitMQ伺服器作爲服務執行,開啓一個cmd視窗(管理員),輸入命令: rabbitmq-service install

#安裝RabbitMQ服務
C:\WINDOWS\system32> rabbitmq-service install

C:\WINDOWS\system32> Service RabbitMQ added to system.

執行命令成功後我們可以檢視一下服務是否已新增成功.

5. 啓動RabbitMQ服務

在cmd 視窗中輸入命令:
rabbitmq-service start

6. 安裝web管理外掛

RabbitMQ 可以通用一個Web介面來進行管理.
在cmd命令視窗中輸入命令:
rabbitmq-plugins enable rabbitmq_management

#安裝web管理元件
C:\WINDOWS\system32> rabbitmq-plugins enable rabbitmq_management

Enabling plugins on node rabbit@hwacer-hp:
rabbitmq_management
The following plugins have been configured:
  rabbitmq_management
  rabbitmq_management_agent
  rabbitmq_web_dispatch
Applying plugin configuration to rabbit@hwacer-hp...
The following plugins have been enabled:
  rabbitmq_management
  rabbitmq_management_agent
  rabbitmq_web_dispatch

set 3 plugins.
Offline change; changes will take effect at broker restart.

注意:

安裝好後需要重新啓動RabbitMQ,使用 stop 停止,然後再使用start 啓動即可.

C:\WINDOWS\system32> rabbitmq-service stop
RabbitMQ 服務正在停止.........
RabbitMQ 服務已成功停止。

C:\WINDOWS\system32> rabbitmq-service start
RabbitMQ 服務正在啓動 .
RabbitMQ 服務已經啓動成功。

7. 開啓web存取

重新啓動之後我們存取 http://localhost:15672/ ,

登陸RabbitMQ 的web管理後臺,預設使用者密碼爲 guest/guest

重新啓動之後可能需要過一會存取才能 纔能開啓.

至此,RabbitMQ安裝設定完畢.

二. 基於Docker環境的RabbitMQ 安裝(選修)

1. 概述

基於 Docker 方式來安裝 RabbitMQ.

2. docker-compose.yml

version: '3.1'
services:
  rabbitmq:
    restart: always
    image: rabbitmq:management
    container_name: rabbitmq
    ports:
      - 5672:5672
      - 15672:15672
    environment:
      TZ: Asia/Shanghai
      RABBITMQ_DEFAULT_USER: rabbit
      RABBITMQ_DEFAULT_PASS: 123456
    volumes:
      - ./data:/var/lib/rabbitmq

3. RabbitMQ WebUI

3.1 存取地址

http://ip:15672

3.2 首頁

3.3 Global counts

  • Connections: 連線數
  • Channels: 頻道數
  • Exchanges: 交換機數
  • Queues: 佇列數
  • Consumers: 消費者數

3.4 交換機頁面

3.5 佇列頁面

  • Name: 訊息佇列的名稱,這裏是通過程式建立的;
  • Features: 訊息佇列的型別,durable:true爲會持久化訊息;
  • Ready: 準備好的訊息;
  • Unacked: 未確認的訊息;
  • Total: 全部訊息;
  • 備註: 如果都爲 0 則說明全部訊息處理完成.