RabbitMQ安裝和使用詳解(轉載+實踐)

1.解壓縮.tar.gz文件: html

tar -zxvf 文件名稱  java

mv 目標文件 目的地址 --移動文件 web

mv 原名稱 新名稱 --重命名 正則表達式


2.配置環境變量 數據庫

# vi profile --編輯配置文件 瀏覽器

在文檔的最後添加: 服務器

export PATH=$PATH:/usr/local/rabbitmq/sbin   工具

保存退出,並使配置文件生效: 測試

# source profile fetch


3.使用、測試RabbitMQ服務

(1)安裝 RabbitMQWeb管理插件

rabbitmq-plugins enable rabbitmq_management
service rabbitmq-server restart



有時候 使用service 可能沒法實現服務器 restart,能夠直接使用:
[root@localhost sbin]# ./rabbitmq-plugins enable rabbitmq_management
[root@localhost sbin]# rabbitmq-server started

(以前遇到的問題:)

[root@localhost sbin]# service rebbitmq-server restart
rebbitmq-server: unrecognized service

(2)測試是否安裝成功

打開瀏覽器登陸:http://127.0.0.1:15672     55672也能夠,直接跳轉到下列web管理

登陸 帳號密碼默認都是 guest


其餘:

五、管理

Rabbitmq服務器的主要經過rabbitmqctl和rabbimq-plugins兩個工具來管理,如下是一些經常使用功能。

1). 服務器啓動與關閉

      啓動: rabbitmq-server –detached

      關閉:rabbitmqctl stop

      若單機有多個實例,則在rabbitmqctlh後加–n 指定名稱

2). 插件管理

      開啓某個插件:rabbitmq-pluginsenable xxx

      關閉某個插件:rabbitmq-pluginsdisablexxx

      注意:重啓服務器後生效。

3).virtual_host管理

      新建virtual_host: rabbitmqctladd_vhost  xxx

      撤銷virtual_host:rabbitmqctl  delete_vhost xxx

4). 用戶管理

      新建用戶:rabbitmqctl add_user xxxpwd

      刪除用戶:   rabbitmqctl delete_user xxx

      改密碼: rabbimqctlchange_password {username} {newpassword}

      設置用戶角色:rabbitmqctlset_user_tags {username} {tag ...}

              Tag能夠爲 administrator,monitoring, management

5). 權限管理

      權限設置:set_permissions [-pvhostpath] {user} {conf} {write} {read}

               Vhostpath

               Vhost路徑

               user

      用戶名

              Conf

      一個正則表達式match哪些配置資源可以被該用戶訪問。

              Write

      一個正則表達式match哪些配置資源可以被該用戶讀。

               Read

      一個正則表達式match哪些配置資源可以被該用戶訪問。

6). 獲取服務器狀態信息

       服務器狀態:rabbitmqctl status

       隊列信息:rabbitmqctl list_queues[-p vhostpath] [queueinfoitem ...]

                Queueinfoitem能夠爲:name,durable,auto_delete,arguments,messages_ready,

                messages_unacknowledged,messages,consumers,memory

       Exchange信息:rabbitmqctllist_exchanges[-p vhostpath] [exchangeinfoitem ...]

                 Exchangeinfoitem有:name,type,durable,auto_delete,internal,arguments.

       Binding信息:rabbitmqctllist_bindings[-p vhostpath] [bindinginfoitem ...]       

                 Bindinginfoitem有:source_name,source_kind,destination_name,destination_kind,routing_key,arguments

       Connection信息:rabbitmqctllist_connections [connectioninfoitem ...]

       Connectioninfoitem有:recv_oct,recv_cnt,send_oct,send_cnt,send_pend等。

       Channel信息:rabbitmqctl  list_channels[channelinfoitem ...]

      Channelinfoitem有consumer_count,messages_unacknowledged,messages_uncommitted,acks_uncommitted,messages_unconfirmed,prefetch_count,client_flow_blocked

部份內容參考自:http://blog.csdn.net/mlks_2008/article/details/18988301


rabbitmq配置

通常狀況下,RabbitMQ的默認配置就足夠了。若是但願特殊設置的話,有兩個途徑:
一個是環境變量的配置文件 rabbitmq-env.conf ;
一個是配置信息的配置文件 rabbitmq.config;
注意,這兩個文件默認是沒有的,若是須要必須本身建立。
rabbitmq-env.conf
這個文件的位置是肯定和不能改變的,位於:/etc/rabbitmq目錄下(這個目錄須要本身建立)。
文件的內容包括了RabbitMQ的一些環境變量,經常使用的有:
#RABBITMQ_NODE_PORT=    //端口號
#HOSTNAME=
RABBITMQ_NODENAME=mq
RABBITMQ_CONFIG_FILE=        //配置文件的路徑
RABBITMQ_MNESIA_BASE=/rabbitmq/data        //須要使用的MNESIA數據庫的路徑
RABBITMQ_LOG_BASE=/rabbitmq/log        //log的路徑
RABBITMQ_PLUGINS_DIR=/rabbitmq/plugins    //插件的路徑

具體的列表見:http://www.rabbitmq.com/configure.html#define-environment-variables

rabbitmq.config
這是一個標準的erlang配置文件。它必須符合erlang配置文件的標準。
它既有默認的目錄,也能夠在rabbitmq-env.conf文件中配置。

文件的內容詳見:http://www.rabbitmq.com/configure.html#config-items

-------------------------------------------------------------------------------------------------

我是在虛擬機CentOS下開發測試MQ的,今天又從新啓動了一下進行測試,發如今啓動時候,竟然報出:

cannot connection ....

這是什麼緣由?!

並且使用:service rabbit-server restart 有報 unregr.....就是不認識這個服務。。瘋球了!

配置幾乎是默認配置,不應出現這問題啊!最後找網上解決方法,沒想到找來找去,又回到這個帖子上了(轉載也是這個),真是對個人各類嘲諷啊!

PS:後來不知道爲何,又正常了。。。唉!

相關文章
相關標籤/搜索