
RabbitMQ 點陣圖風格 by ChatGPT-4o
上篇『新手實戰 RabbitMQ:Producer、Exchange、Queue 和 Consumer 的基本介紹』我們初步認識了 RabbitMQ 的核心部件,本篇我們從安裝到建立 RabbitMQ Server 都會詳細介紹。
以下都會以 Windows 系統來做說明,使用 Linux 或 MacOS 的讀者不用擔心,可以到 RabbitMQ 的官網上,有詳細的安裝流程。
本篇會安裝程式到本地端,如果會使用 Docker 的讀者也推薦用以下的指令直接安裝 :
# latest RabbitMQ 4.x
docker run -it --rm --name rabbitmq -p 5672:5672 -p 15672:15672 rabbitmq:4-management
那我們就直接開始吧!在安裝 RabbitMQ 之前必須先安裝 Erlang,因為 RabbitMQ 就是使用 Erlang 語言所開發。首先到 Erlang 官網上下載安裝檔

Erlang 下載頁面
再來是安裝 RabbitMQ,到下載頁面取得安裝檔

RabbitMQ 下載頁面
點開安裝檔只需要持續下一步就好,記得 Erlang 要先安裝,不然會跳出錯誤。安裝後到 Program Files 內檢查是否正確安裝

Erlang 安裝位置

RabbitMQ 安裝位置
再來就是加入環境變數,首先在 Windows 設定內搜尋環境變數,點選"編輯系統環境變數"

編輯系統環境變數
接著點選"環境變數"

環境變數
再到下方 Path 的位置雙擊它

Path 設定
最後點選"新增",輸入安裝路徑,如果沒有任何修改的話會類似這樣
C:\Program Files\Erlang OTP\bin
C:\Program Files\RabbitMQ Server\rabbitmq_server-4.1.2\sbin

新增環境變數路徑
最後點選"確定"後就完成設定了!接著打開任意的 Terminal,檢查是否設定正確,首先檢查 Erlang,輸入指令 erl

檢查設定環境情形 - Erlang
可以發現進入了 Erlang 的互動式 shell,確認正常後輸入 q(). 離開。接著啟動 RabbitMQ Server,輸入指令
# 開啟 WEB UI 相關套件
rabbitmq-plugins enable rabbitmq_management
# 啟動 Server
rabbitmq-server
接著會出現啟動 Server 的資訊,這邊出現了一大串 Error

rabbitmq-server 啟動失敗
*若讀者成功啟動可以略過這部分
細讀後發現,是因為啟動需要的 Port 被佔用了,先檢查 25672 是被哪個程式佔用
netstat -aon | findstr :25672

Port 佔用情形
知道 PID 之後也可以到系統管理員查看是哪個程式佔用

工作管理員
發現是 Erlang 的程式,有可能是安裝完後自動執行的文件或是曾經開啟沒正確關閉。確認是可以砍掉的程式後,輸入以下指令檢查 erl 有執行那些背景檔
tasklist | findstr /I erl
知道是哪些 PID 之後可以再次回到工作管理員手動刪除,或是執行
taskkill /PID 你的PID /F
刪除後我們再啟動一次 Server,出現 Rabbitmq 經典兔子圖案就是成功啟動
rabbitmq-server

RabbitMQ Server 啟動
接著我們打開瀏覽器輸入
http://localhost:15672/
即可進入登入頁面,帳號密碼預設都是 guest,之後在 Web UI 都可以做更改

登入頁面

RabbitMQ Overview
如果想更改預設的 Port(當然沒事不需要亂改),可以遵循以下的操作流程。到 C:\Users\(使用者名稱)\AppData\Roaming\RabbitMQ\ 的路徑下新增"rabbitmq.conf"

新增 rabbitmq.conf
接著打開該檔案,可使用 Notepad++ 或是 VSCode 之類的文字檔,加上以下的訊息
management.listener.port = 8888
接著重啟
# 常駐背景執行就用 rabbitmq-service start
# 想把 cmd 當成 Server 就使用 rabbitmq-server
rabbitmq-service stop
rabbitmq-service start

RabbitMQ 重啟
再到網頁輸入 "localhost:8888" 即可成功進入 Web UI

Web UI 登入頁面
以上內容涵蓋了從 RabbitMQ 安裝到啟動 Server 的完整流程,基本上只要按照步驟操作,就能順利完成安裝。完成安裝後,就可以開始進行實際的應用開發。下篇《新手實戰 RabbitMQ:使用 Python 實作五種常見架構》將接觸到實際應用 RabbitMQ 的層面,我們下篇再見!