RabbitMQ是目前比較使用比較廣泛的一個隊列服務器,但是很多朋友在使用過程中,也遇到一些問題,這篇文章主要是做一個總結吧
本篇文章,雖然標題命名為“安裝與卸載”,但是網上有很多類似的文章,我就簡單說一下,主要目的是記錄安裝與卸載過程中遇到一些坑
(一)安裝
1.RabbitMQ依賴於Erlang虛擬機,首先我們先去官網下載Erlang和RabbitMQ,也可以直接去網盤下載,提取碼:l80p;
2.鼠標右鍵 - 以管理員身份運行,分別安裝Erlang和RabbitMQ
3.Win+R,輸入CMD,打開dos命令窗口,輸入“cd C:\Program Files\RabbitMQ Server\rabbitmq_server-3.6.12\sbin”(根據實際安裝路徑調整),回車,定位到RabbitMQ安裝目錄sbin文件夾;
4.輸入“rabbitmqctl status”,查看是否安裝成功;
5.輸入“rabbitmq-plugins enable rabbitmq_management”,打開RabbitMQ管理插件;
6.使用服務器上的瀏覽器,地址“http://127.0.0.1:15672/”,打開管理頁面(賬號:guest;密碼:guest)
7.創建一個administered賬戶(guest只允許本機訪問)
(二)卸載
1.打開Windows控制面板,雙擊“程序和功能”。
2.在當前安裝的程序列表中,右鍵單擊RabbitMQ Server,然后單擊“卸載”。
3.在當前安裝的程序列表中,右鍵單擊“Erlang OTP”,然后單擊“卸載”。
4.打開Windows任務管理器。
5.在任務管理器中,查找進程epmd.exe。 如果此進程仍在運行,請右鍵單擊該進程,然后單擊“結束進程”。
6.刪除RabbitMQ和Erlang的所有安裝目錄。
7.刪除文件C:\ Windows \ .erlang.cookie(如果存在)。
8.轉到用戶文件夾:C:\ Users \ [username],然后刪除文件.erlang.cookie。刪除
9.同樣在User文件夾中,轉到AppData \ Roaming \ RabbitMQ。刪除RabbitMQ文件夾。 10.打開運行cmd->sc delete RabbitMQ。
10.打開運行->regedit 找到RabbitMQ節點,刪掉即可。
參考:https://blog.csdn.net/qq_41463655/article/details/86747917
(三)那些年遇到的坑(重點來了)
1.卸載時,在任務管理器中,找不到epmd.exe的進程,但是刪除目錄中的文件時,卻提示被占用
解決方案:任務管理器 - 性能 - 打開資源監視器,在資源監視器中找到epmd,右鍵 - 結束進程,問題解決
2.安裝好之后,創建了賬號,但是使用過程中,依然提示權限不足
a.原因是創建了管理員賬號,卻沒有分配權限,點擊用戶,給分配權限就可以了,這里默認的管理員擁有所有權限
3.安裝RabbitMQ時,查看安裝的詳細信息,出現異常,導致服務無法啟動
a.一般情況下不會出現該問題,因為安裝Erlang的時候,會自動添加注冊表,但是某些Windows環境問題(未找到問題點),或者不是用管理員安裝(權限不足),導致無法添加注冊表,導致安裝失敗
解決方案:
手動添加注冊表信息,9.0是指Erlang的版本,根據實際情況可能不同,路徑是Erlang的安裝目錄,根據實際情況配置安裝目錄
依次執行命令:rabbitmq-service stop,rabbitmq-service remove,rabbitmq-service install,rabbitmq-service start,卸載並重新安裝RabbitMQ的服務
4.安裝在第4步的時候,出現問題“ unable to connect to node 'rabbit@2012-R2-Datacenter-64bit': nodedown”
解決方案:看到網上說是C:\Windows\.erlang.cookie和C:\Users\[username]\.erlang.cookie的口令不一致導致的,刪除其一,將另外一個復制過來就可以了
5.正常使用中,發現日志記錄增長很快,日志過大,不利於定位問題
因為rabbitMQ日志默認記錄級別是Info,會記錄所有進出棧信息,導致日志過大,只需要將配置文件的日志級別設置為error或者warning
配置文件和日志的目錄在安裝用戶目錄下,可以在管理頁面的首頁查看
[
{rabbit, [
{vm_memory_high_watermark_paging_ratio, 0.4},
{vm_memory_high_watermark, 0.4},
{log_levels, [{connection, warning}, {channel, warning}]}
]
}
].
6.使用MQ過程中,業務量大的時候,服務器CPU會暴增,原因是可能是因為每次連接都是創建一個連接對象,又沒有及時釋放導致的,建議創建連接通道時,使用單例模式
7.安裝目錄,盡量不要使用中文,可能會因為中文編碼導致亂碼
8.安裝目錄,盡量不要使用帶空格的目錄,網上有一些說是空格也會有問題,雖然我目前安裝的目錄有空格也沒有出現什么異常
總結:
這就是我們公司使用MQ過程中遇到的一些問題,做一個記錄,分享出來希望能幫助到遇見類似問題的朋友,如果各位大佬有更好的解決方案歡迎指教更正,多多交流