最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

RabbitMq 常用命令和REST API詳解

 更新時(shí)間:2025年07月28日 09:48:24   作者:java葉新東老師  
RabbitMQ管理命令涵蓋服務(wù)啟停、用戶權(quán)限、虛擬主機(jī)、隊(duì)列操作、消息管理及集群配置,包含創(chuàng)建/刪除用戶、設(shè)置角色、綁定交換機(jī)與隊(duì)列、REST API數(shù)據(jù)查詢等關(guān)鍵操作,需注意參數(shù)格式和角色唯一性限制,本文給大家介紹RabbitMq常用命令和REST API,感興趣的朋友一起看看吧

服務(wù)管理相關(guān)

啟動(dòng): service rabbitmq-server start 或 rabbitmq-service start
關(guān)閉: service rabbitmq-server stop 或 rabbitmq-service stop
重啟: service rabbitmq-server restart
查看狀態(tài): rabbitmqctl status

用戶相關(guān)

創(chuàng)建用戶

后面2個(gè)參數(shù)是用戶名和密碼

rabbitmqctl add_user userName password

修改密碼

rabbitmqctl change_password userName newPassword

校驗(yàn)密碼

校驗(yàn)賬號和密碼是否匹配

rabbitmqctl authenticate_user userName "password"
  • 若校驗(yàn)正確會(huì)打印出Success的字樣
  • 若校驗(yàn)失?。ㄙ~號或密碼錯(cuò)誤)會(huì)打印出Error的字樣

展示所有用戶

除了用戶名之外,還會(huì)顯示每個(gè)用戶所屬的角色

rabbitmqctl list_users

刪除用戶

rabbitmqctl delete_user userName

清除密碼

rabbitmqctl clear_password {userName}

角色相關(guān)

用戶角色可通過命令:rabbitmqctl list_users查看

rabbitmq角色有以下幾個(gè):

  1. 超級管理員(administrator):可登陸管理控制臺(啟用management plugin的情況下),可查看所有的信息,并且可以對用戶,策略(policy)進(jìn)行操作
  2. 監(jiān)控者(monitoring): 可登陸管理控制臺(啟用management plugin的情況下),同時(shí)可以查看rabbitmq節(jié)點(diǎn)的相關(guān)信息(進(jìn)程數(shù),內(nèi)存使用情況,磁盤使用情況等)
  3. 策略制定者(policymaker): 可登陸管理控制臺(啟用management plugin的情況下), 同時(shí)可以對policy進(jìn)行管理。但無法查看節(jié)點(diǎn)的相關(guān)信息(上圖紅框標(biāo)識的部分)。
  4. 普通管理者(management): 僅可登陸管理控制臺(啟用management plugin的情況下),無法看到節(jié)點(diǎn)信息,也無法對策略進(jìn)行管理。
  5. policymaker:包含managerment所有權(quán)限,并且可以管理策略(Policy)和參數(shù)(Parameter)
  6. none:無角色, 無法登陸管理控制臺,通常就是普通的生產(chǎn)者和消費(fèi)者。

設(shè)置用戶角色

將userName設(shè)為administartor角色,當(dāng)角色不存在時(shí),會(huì)自動(dòng)創(chuàng)建角色,一個(gè)用戶只能有一個(gè)角色;

在設(shè)置角色時(shí)administartor后面不能有空格,否則空格也算是一個(gè)字符,rabbitmq不會(huì)忽略空格

rabbitmqctl set_user_tags userName administartor

設(shè)置多個(gè)角色(無效:設(shè)置后不是2個(gè)權(quán)限,而是一個(gè)權(quán)限,權(quán)限名稱為:monitoring policymaker)

rabbitmqctl set_user_tags userName monitoring policymaker

Vhost管理

查看所有虛擬主機(jī):rabbitmqctl list_vhosts
添加虛擬主機(jī):rabbitmqctl add_vhost vhostname
刪除虛擬主機(jī):rabbitmqctl delete_vhost vhostname

權(quán)限管理

設(shè)置用戶權(quán)限

-p / 表示指定vHosts

rabbitmqctl set_permissions -p / root ".*" ".*" ".*"

查看用戶權(quán)限

查看所有已設(shè)置了權(quán)限的用戶(無權(quán)限的用戶不展示)

rabbitmqctl list_user_permissions

查看指定用戶的權(quán)限

rabbitmqctl list_user_permissions username

清除用戶權(quán)限

-p / 表示指定vHosts

rabbitmqctl clear_permissions -p / username

web管理相關(guān)

開啟/關(guān)閉web管理頁面

# 開啟web管理頁面
rabbitmq-plugins enable rabbitmq_management
# 關(guān)閉web管理頁面
rabbitmq-plugins disable rabbitmq_management

插件相關(guān)

查看插件

rabbitmq-plugins list

應(yīng)用管理

應(yīng)用和節(jié)點(diǎn)都關(guān)閉 :rabbitmqctl stop
關(guān)閉應(yīng)用:rabbitmqctl stop_app
啟動(dòng)應(yīng)用:rabbitmqctl start_app

隊(duì)列管理

查看所有隊(duì)列

rabbitmqctl list_queues

清除所有隊(duì)列

清楚之前需要先執(zhí)行rabbitmqctl stop_app命令

rabbitmqctl reset

強(qiáng)制清除隊(duì)列

rabbitmqctl force_reset

集群管理

查看集群狀態(tài): rabbitmqctl cluster_status
摘除節(jié)點(diǎn): rabbitmqctl forget_cluster_node [--offline]
組成集群命令: rabbitmqctl join_cluster <clusternode> [--ram]
修改節(jié)點(diǎn)存儲(chǔ)形式: rabbitmqctl change_cluster_node_type disc | ram
修改節(jié)點(diǎn)名稱: rabbitmqctl rename_cluster_node oldnode1 newnode1 [oldnode2 newnode2] [oldnode3 newnode3...]

信息查看

查看所有連接:rabbitmqadmin list connections
概覽 Overview: rabbitmqadmin show overview
查看所有節(jié)點(diǎn) Node:rabbitmqadmin list nodes
查看所有通道 Channel:rabbitmqadmin list channels
查看所有消費(fèi)者 Consumer:rabbitmqadmin list consumers
查看所有路由 Exchange:rabbitmqadmin list exchanges
查看所有路由與隊(duì)列的關(guān)系綁定 Binding:rabbitmqadmin list bindings

rabbitmqadmin 命令

  • -u:用戶名
  • -p:密碼

查詢命令

查看所有的交換機(jī):rabbitmqadmin -u root -p woaini list exchanges
查看所有的隊(duì)列:rabbitmqadmin -u root -p woaini list queues
查看所有的交換機(jī)和隊(duì)列的綁定關(guān)系:rabbitmqadmin -u root -p woaini list bindings
查看所有的用戶:rabbitmqadmin -u root -p woaini list users
查看所有的權(quán)限信息:rabbitmqadmin -u root -p woaini list permissions
查看所有的連接信息:rabbitmqadmin -u root -p woaini list connections
查看所有的通道信息:rabbitmqadmin -u root -p woaini list channels

創(chuàng)建交換機(jī)

  • name:交換機(jī)名稱
  • durable:是否持久化
  • auto_delete:是否自動(dòng)刪除
  • type:交換機(jī)類型
rabbitmqadmin  -u root -p woaini declare exchange name=exchange_name_1 durable=true auto_delete=false type=direct

創(chuàng)建隊(duì)列

rabbitmqadmin  -u root -p woaini declare queue name=queue_name_1 durable=true auto_delete=false

綁定隊(duì)列和交換機(jī)

  • source:需要綁定的交換機(jī)名稱
  • destination:(目標(biāo))需要綁定的隊(duì)列名稱

執(zhí)行前必須先創(chuàng)建隊(duì)列和交換機(jī),否則會(huì)報(bào)錯(cuò):*** Not found: /api/bindings/%2F/e/exchange_name_1/q/queue_name_1
在 direct 交換機(jī)下,隊(duì)列名稱和routingKey名稱必須一致,否則發(fā)送消息時(shí)無法路由

rabbitmqadmin -u root -p woaini declare binding source=exchange_name_1 destination=queue_name_1 routing_key=queue_name_1

發(fā)送消息

rabbitmqadmin -u root -p woaini publish routing_key=routing_key_1 payload="hello yexindong"

查看隊(duì)列中的消息

可以查看到剛剛發(fā)送的消息

rabbitmqadmin -u root -p woaini get queue=queue_name_1

其他命令

命令解釋
rabbitmqadmin list users查看所有用戶 User
rabbitmqadmin list users name查看所有用戶名 Username
rabbitmqadmin list users tags查看所有用戶角色
rabbitmqadmin list vhosts查看所有虛擬主機(jī)
rabbitmqadmin list connections查看所有連接
rabbitmqadmin list exchanges查看所有路由 Exchange
rabbitmqadmin list bindings查看所有路由與隊(duì)列的關(guān)系綁定 Binding
rabbitmqadmin list permissions查看所有角色的權(quán)限 Permission
rabbitmqadmin list channels查看所有通道 Channel
rabbitmqadmin list consumers查看所有消費(fèi)者 Consumer
rabbitmqadmin list queues查看所有消息隊(duì)列 Queue
rabbitmqadmin list nodes查看所有節(jié)點(diǎn) Node
rabbitmqadmin show overview概覽 Overview
rabbitmqadmin list bindings source destination_type destination properties_key查看所有路由與隊(duì)列的關(guān)系綁定的詳細(xì)信息 Binding
rabbitmqadmin declare queue name=test durable=true定義一個(gè)隊(duì)列queue,durable=true代表持久化打開。
rabbitmqadmin declare exchange name=my.fanout type=fanout定義一個(gè)Fanout路由
rabbitmqadmin declare exchange name=my.direct type=direct定義一個(gè)Direct路由
rabbitmqadmin declare exchange name=my.topic type=topic定義一個(gè)Topic路由
rabbitmqadmin declare binding source=my.fanout destination=test routing_key=first定義 binding
rabbitmqadmin publish routing_key=test payload=“hello world”發(fā)布一條消息
rabbitmqadmin publish routing_key=my.test exchange=my.topic payload=“hello world”使用路由轉(zhuǎn)發(fā)消息
rabbitmqadmin get queue=test requeue=true查看消息,不消費(fèi)
rabbitmqadmin get queue=test requeue=false查看消息,并消費(fèi)
rabbitmqadmin purge queue name=test刪除隊(duì)列中的所有消息
rabbitmqadmin delete queue name=hello刪除消息隊(duì)列 Queue
rabbitmqadmin delete user name=test刪除用戶 User
rabbitmqadmin delete exchange name=test刪除路由器 Exchange
rabbitmqadmin delete binding source=‘kk’ destination_type=queue destination=test properties_key=test刪除路由器與消息隊(duì)列的關(guān)系綁定 Binding
rabbitmqadmin -f raw_json list usersraw_json 格式化輸出
rabbitmqadmin -f long list users格式化輸出
rabbitmqadmin -f pretty_json list users pretty_json格式化輸出
rabbitmqadmin -f kvp list users格式化輸出
rabbitmqadmin -f tsv list users格式化輸出
rabbitmqadmin -f table list userstable 格式化輸出
rabbitmqadmin -f bash list usersbash 格式化輸出

REST API

查看所有隊(duì)列統(tǒng)計(jì)數(shù)據(jù)

-i 表示顯示響應(yīng)頭信息。
-u 指定用戶密碼

curl -i -u root:woaini http://localhost:15672/api/queues

查看虛擬主機(jī) myvh 下 hello-queue 隊(duì)列的數(shù)據(jù)統(tǒng)計(jì)

curl -i -u root:woaini http://localhost:15672/api/queues/myvh/hello-queue

查看虛擬主機(jī) / 下 hello-queue 隊(duì)列的數(shù)據(jù)統(tǒng)計(jì)

需要將 / 進(jìn)行轉(zhuǎn)義后結(jié)果為:%2f

curl -i -u root:woaini http://localhost:15672/api/queues/%2f/hello-queue

創(chuàng)建隊(duì)列

在 /myvh 虛擬主機(jī)下創(chuàng)建一個(gè)名為 javaboy-queue 的隊(duì)列

curl -i -u root:woaini  -XPUT -H "Content-Type:application/json" -d '{"auto_delete":false,"durable":true}' http://localhost:15672/api/queues/myvh/javaboy-queue

查看當(dāng)前連接信息

curl -i -u root:woaini  http://localhost:15672/api/connections

查看當(dāng)前用戶信息

curl -i -u root:woaini http://localhost:15672/api/users

創(chuàng)建用戶

創(chuàng)建一個(gè)名為 zhangsan,密碼是 123 ,角色是 administrator 的用戶。

curl -i -u root:woaini -H "{Content-Type:application/json}" -d '{"password":"123","tags":"administrator"}' -XPUT http://localhost:15672/api/users/zhangsan

為新用戶設(shè)置 vhost

將名為 zhangsan 的用戶設(shè)置到名為 myvh 的 vhost 下:

curl -i -u root:woaini -H "{Content-Type:application/json}" -d '{"configure":".*","write":".*","read":".*"}' -XPUT http://localhost:15672/api/permissions/myvh/zhangsan

到此這篇關(guān)于RabbitMq 常用命令和REST API詳解的文章就介紹到這了,更多相關(guān)RabbitMq 命令和REST API內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評論

栾城县| 高台县| 惠安县| 贺州市| 诏安县| 天全县| 岱山县| 都兰县| 南投县| 鸡泽县| 瓦房店市| 措美县| 开远市| 班戈县| 鹤岗市| 兴仁县| 天祝| 蒙山县| 惠水县| 镇平县| 宝兴县| 裕民县| 高台县| 雅江县| 洛隆县| 阳高县| 江都市| 凤凰县| 宜章县| 随州市| 凤城市| 达拉特旗| 康平县| 东光县| 留坝县| 富民县| 平顶山市| 民权县| 冷水江市| 中超| 吴川市|