RabbitMQ精講2:常用命令和配置文件

目錄

常用命令

1.1 基礎服務的命令操作

1.2 對rabbitmq 具體組件的命令

1.2.1 對虛擬主機操作

1.2.2 隊列操作

1.3 高級操作

RabbitMQ配置文件

rabbitmq-env.conf

rabbitmq.config

一臺機器啓動多個實例

rabbitmq-env.conf:

rabbitmq.config:


常用命令

1.1 基礎服務的命令操作

基礎服務的命令操作
  • rabbitmqctl stop_app:關閉應用
  • rabbitmqctl start_app:啓動應用
  • rabbtmqctl status:節點狀態
基礎服務的命令操作
  • rabbitmqctl add_user username password:添加用戶
  • rabbitmqctl list_users:列出所有用戶
  • rabbitmqctl delete_user username:刪除用戶
  • rabbitmqctl clear_permissions - p vhostpath username: 清除用戶權限
基礎服務的命令操作
  • rabbitmqctl list_user_permissions_username: 列出用戶權限
  • rabbitmqctl change_password username newpassword:修改密碼
  • rabbitmqctl set_permissions -p vhostpath username “." ".” “.*” :設置用戶權限

1.2 對rabbitmq 具體組件的命令

1.2.1 對虛擬主機操作

  • rabbitmqctl add_vhost vhostpath:創建虛擬主機
  • rabbitmqctl list_vhosts:列出所有虛擬主機
  • rabbitmqctl list_permissions -p vhostpath:列出虛擬主機上所有權限
  • rabbitmqctl delete_vhost vhostpath:刪除虛擬主機

1.2.2 隊列操作

  • rabbitmqctl list_queues:查看所有隊列信息
  • rabbitmqctl -p vhostpath purge_queue bule:清除隊列裏的消息

1.3 高級操作

  • rabbitmqctl reset:移除所有數據,要在rabbitmqctl stop_app之後使用
  • rabbitmqctl join_clust [–ram]:組成集羣命令
  • rabbitmqctl clustr_status:查看集羣狀態

  • rabbitmqctl change_cluster_node_type disc|ram 修改集羣節點的存儲形式
  • rabbitmqctl forget_cluster_node [–offline] 忘記節點(摘除節點)
  • rabbitmqctl rename_cluster_node oldnode1 newnode1 [oldnode2] [newnode2…] (修改節點名稱)

RabbitMQ配置文件

rabbitmq-env.conf

RABBITMQ_NODE_IP_ADDRESS= //IP地址,空串bind所有地址,指定地址bind指定網絡接口
RABBITMQ_NODE_PORT=       //TCP端口號,默認是5672
RABBITMQ_NODENAME=        //節點名稱。默認是rabbit
RABBITMQ_CONFIG_FILE= //配置文件路徑 ,即rabbitmq.config文件路徑
RABBITMQ_MNESIA_BASE=     //mnesia所在路徑
RABBITMQ_LOG_BASE=        //日誌所在路徑
RABBITMQ_PLUGINS_DIR=     //插件所在路徑

rabbitmq.config

tcp_listerners    #設置rabbimq的監聽端口,默認爲[5672]。
disk_free_limit     #磁盤低水位線,若磁盤容量低於指定值則停止接收數據,默認值爲{mem_relative, 1.0},即與內存相關聯1:1,也可定製爲多少byte.
vm_memory_high_watermark    #設置內存低水位線,若低於該水位線,則開啓流控機制,默認值是0.4,即內存總量的40%。
hipe_compile     #將部分rabbimq代碼用High Performance Erlang compiler編譯,可提升性能,該參數是實驗性,若出現erlang vm segfaults,應關掉。
force_fine_statistics    #該參數屬於rabbimq_management,若爲true則進行精細化的統計,但會影響性能。
frame_max     #包大小,若包小則低延遲,若包則高吞吐,默認是131072=128K。
heartbeat     #客戶端與服務端心跳間隔,設置爲0則關閉心跳,默認是600秒。

一臺機器啓動多個實例

以上如果希望一個機器中啓動多個實例,簡單需要配置的地方僅有

rabbitmq-env.conf:

#改個名字
RABBITMQ_NODENAME=your_new_node_name
#改個端口    
RABBITMQ_NODE_PORT=5673

rabbitmq.config:

%tcp 監聽端口對應修改%
{tcp_listeners, [5673]},

rabbitmq_management下面的監聽端口對應修改,建議原端口加10000保持與原來默認的統一

{listener, [{port,     15673}]}

參考文檔:

http://www.rabbitmq.com/configure.html#configuration-file

http://www.bjpowernode.com/tutorial_rabbitmq/947.html

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章