最近這幾天身體不舒服,脖子痛的厲害,可能是上月太累了好久沒寫博客了,之前也說了公司的.Net項目部做了,改用Scale來做,原本想着會用java來搞,所以上個月在拼命的學java,這幾天一直脖子不舒服,也就不學了,也一直在追劇,和陳工聊天時也討論過要不要轉java,繼續學,考慮了好久決定還是先不折騰了,繼續.Net。本來想着再休息一周呢,不過最近脖子好多了,今天正好沒事做就研究了下RabbitMQ。
一、下載
Rabbit MQ 是建立在強大的Erlang OTP平台上,因此安裝RabbitMQ之前要先安裝Erlang。
erlang:http://www.erlang.org/download.html
rabbitmq:http://www.rabbitmq.com/download.html
二、安裝
下載之后先安裝erlang后安裝rabbitmq,這里我把這兩個安裝在了D:\Program Files
三、配置
1.使用RabbitMQ 管理插件,可以更好的可視化方式查看Rabbit MQ 服務器實例的狀態。
打開命令窗口:
輸入命令:rabbitmq-plugins.bat enable rabbitmq_management
2.重啟服務器
net stop RabbitMQ && net start RabbitMQ
此時會出現上面的錯誤,原來是需要用管理員的角色。重新已管理員打開cmd命令窗口執行命令。
此時服務已經啟動。
3.用戶及權限管理
使用rabbitmqctl控制台命令來創建用戶,密碼,綁定權限等。
查看已有用戶及用戶的角色:rabbitmqctl.bat list_users 默認會存在一個來賓賬號 guest
新增一個用戶:rabbitmqctl.bat add_user username password
可以看到上面已經創建了一個cywadmin的用戶,只是角色為[],guest的角色是administor。
rabbitmq用戶角色可分為五類:超級管理員, 監控者, 策略制定者, 普通管理者以及其他
(1) 超級管理員(administrator)
可登陸管理控制台(啟用management plugin的情況下),可查看所有的信息,並且可以對用戶,策略(policy)進行操作。
(2) 監控者(monitoring)
可登陸管理控制台(啟用management plugin的情況下),同時可以查看rabbitmq節點的相關信息(進程數,內存使用情況,磁盤使用情況等)
(3) 策略制定者(policymaker)
可登陸管理控制台(啟用management plugin的情況下), 同時可以對policy進行管理。
(4) 普通管理者(management)
僅可登陸管理控制台(啟用management plugin的情況下),無法看到節點信息,也無法對策略進行管理。
(5) 其他的
無法登陸管理控制台,通常就是普通的生產者和消費者
下面給cywadmin來增加administrator角色
rabbitmqctl.bat set_user_tags username administrator
此時已經為cywadmin增加了角色administrator,也可以為其增加多個角色rabbitmqctl.bat set_user_tags username tag1 tag2 ...
修改密碼
guest的默認密碼是guest,可以修改密碼
同樣也可以刪除用戶
rabbitmqctl.bat delete_user username
4.消息隊列的管理
使用瀏覽器打開 http://localhost:15672 訪問Rabbit Mq的管理控制台,使用剛才創建的賬號登陸系統:
上面主要是演示了下對用戶的管理,通過上面的管理頁面不僅能對用戶進行管理還可以對用戶的權限進行管理