Win7安裝rabbitMQ及基本操作


1. 先下載並安裝Erlang

1.1 官網下載對應版本的安裝包安裝;

1.2.設置ErLang環境變量,配置Erlang的bin目錄到系統變量Path,

1.3 命令行輸入 erl 命令 檢查是否安裝成功:

 

2.安裝RabbitMQ

2.1 官網下載安裝包並安裝;

2.2 安裝完成后 命令行切換到安裝目錄的sbin下(也可以配置環境變量)

輸入命令啟動 rabbitmq_managemen(RabbitMQ的管理后台的插件)

rabbitmq-plugins enable rabbitmq_management

2.3 服務已經默認開啟,如果沒有開啟,可以輸入命令手動開啟:

   rabbitmq-server start

 

2.4  登陸管理界面

開啟瀏覽器訪問http://localhost:15672

默認userName:guest    password:guest

 

 

 

3.  基本概念和操作

  • RabbitMQ 默認監聽端口是5672
  • Broker:簡單來說就是消息隊列服務器實體。
  • Exchange:消息交換機,它指定消息按什么規則,路由到哪個隊列。
  • Queue:消息隊列載體,每個消息都會被投入到一個或多個隊列。
  • Binding:綁定,它的作用就是把exchange和queue按照路由規則綁定起來。
  • Routing Key:路由關鍵字,exchange根據這個關鍵字進行消息投遞。
  • vhost:虛擬主機,一個broker里可以開設多個vhost,用作不同用戶的權限分離。
  • producer:消息生產者,就是投遞消息的程序。
  • consumer:消息消費者,就是接受消息的程序。
  • channel:消息通道,在客戶端的每個連接里,可建立多個channel,每個channel代表一個會話任務。

3.1 基本操作

  重啟服務:

net stop RabbitMQ && net start RabbitMQ

  RabbitMQ啟動和關閉

rabbitmq-service start
rabbitmq-service stop

 

3.2 用戶管理

  (1)查看已有用戶及用戶的角色:

rabbitmqctl.bat list_users

  (2)新增一個用戶:

rabbitmqctl.bat add_user {{username}} {{password}}

  (3)設置用戶角色:

rabbitmqctl.bat set_user_tags {{username}} administrator

  rabbitmq用戶角色可分為五類:

  • 超級管理員(administrator)

    可登陸管理控制台(啟用management plugin的情況下),可查看所有的信息,並且可以對用戶,策略(policy)進行操作。

  • 監控者(monitoring)

    可登陸管理控制台(啟用management plugin的情況下),同時可以查看rabbitmq節點的相關信息(進程數,內存使用情況,磁盤使用情況等) 

  • 策略制定者(policymaker)

    可登陸管理控制台(啟用management plugin的情況下), 同時可以對policy進行管理。

  • 普通管理者(management)

    僅可登陸管理控制台(啟用management plugin的情況下),無法看到節點信息,也無法對策略進行管理。

  •  無角色

    無法登陸管理控制台,通常就是普通的生產者和消費者。

 

  (4)一個用戶可以同時具有多個角色:

rabbitmqctl.bat  set_user_tags  {{username}} {{tag1}} {{tag2}} ...

  (5)更改用戶密碼:

rabbitmqctl change_password {{userName}} {{newPassword}}

  (6)刪除用戶:

rabbitmqctl.bat delete_user {{username}}

3.3 vhost管理和權限設置

  • 當我們在創建用戶時,會指定用戶能訪問一個虛擬主機,並且該用戶只能訪問該虛擬機下的隊列(queue)和交換機(exchange),如果沒有指定,默認的是”/”。
  • 每一個vhost本質上是一個mini版的RabbitMQ服務器,擁有自己的交換機、隊列、綁定等,擁有自己的權限機制。vhost之於Rabbit就像虛擬機之於物理機一樣。
  • 一個rabbitmq服務器上可以運行多個vhost,以便於適用不同的業務需要,這樣做既可以滿足權限配置的要求,也可以避免不同業務之間隊列、交換機的命名沖突問題,因為不同vhost之間是隔離的。
  • 用戶權限指的是用戶對exchange,queue的操作權限,包括配置權限,讀權限、寫權限(ConfP  WriteP  ReadP)。


  (1) 新增虛擬主機:

rabbitmqctl add_vhost  {{vhost_name}}

  (2) 設置用戶權限

rabbitmqctl  set_permissions  -p  {{vhost_name}} {{username}} ConfP WriteP ReadP

  (3) 查看(指定hostpath)所有用戶的權限信息

rabbitmqctl  list_permissions  [-p  {{vhost_name}}]

  (4) 查看指定用戶的權限信息

rabbitmqctl  list_user_permissions  {{username}}

  (5)  清除用戶的權限信息

rabbitmqctl  clear_permissions  [-p {{vhost_name}}] User

  (6) 查看所有vhost

rabbitmqctl list_vhosts

  (7) 刪除vhost

rabbitmqctl delete_vhost {{vhost_name}}

 

3.4  隊列管理

查看所有的隊列:
    rabbitmqctl list_queues
清除所有的隊列:
    rabbitmqctl reset

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM