RabbitMQ 通过HTTP API删除队列命令


1. 第一条命令:删除指定队列

cmd 复制代码
curl -X DELETE -u admin:rmq@1234 
"http://10.11.64.12:15672/api/queues/%2F/ai-tpp-pm-749a510b-aa20-47a1-bac5-7f44f7edb1ab"
作用

删除虚拟主机 /(编码为 %2F)下名为 ai-tpp-pm-749a510b-aa20-47a1-bac5-7f44f7edb1ab 的队列。

参数解析
参数 说明
-X DELETE 使用 HTTP DELETE 方法
-u admin:rmq@1234 基本认证(用户名:密码)
%2F URL 编码的默认虚拟主机 /
队列名 完整队列名称,需精确匹配
适用场景
  • 明确知道队列名称,需立即删除单个队列。

2. 第二条命令:创建自动删除策略

cmd 复制代码
curl -X PUT -u admin:rmq@1234^
  -H "Content-Type: application/json" ^
  -d "{\"pattern\":\"^ai-tpp-pm.*\", \"definition\":{\"expires\":10000}, \"apply-to\":\"queues\"}" ^
  "http://10.11.64.12:15672/api/policies/%2F/auto-delete-queues"
作用

创建一个名为 auto-delete-queues 的策略,规则如下:

  • 匹配队列 :名称以 ai-tp-pm 开头的所有队列(正则表达式 ^ai-tpp-pm.*)。
  • 行为 :队列空闲 10 秒(expires:10000 毫秒)后自动删除。
  • 生效范围 :仅作用于队列(apply-to:queues)。
参数解析
参数 说明
-X PUT 使用 HTTP PUT 方法
-H "Content-Type: application/json" 声明请求体为 JSON 格式
-d "{\"pattern\":...}" JSON 请求体(需转义双引号)
"http://.../policies/%2F/auto-delete-queues" 策略保存路径(%2F 是虚拟主机 /
JSON 关键字段
字段 说明
pattern ^ai-tpp-pm.* 正则匹配队列名前缀
definition.expires 10000 队列空闲 10 秒后删除
apply-to queues 策略仅应用于队列
适用场景
  • 需批量清理符合特定命名规则的临时队列。
  • 避免队列残留(如测试环境或动态生成的队列)。

3. 主要区别

删除单条队列 创建自动删除策略
HTTP 方法 DELETE PUT
目标 直接操作队列 定义策略规则
影响范围 单个队列 所有匹配队列
执行时机 立即生效 满足条件时触发(如空闲超时)

4. 常见问题

Q1:为什么策略中的 . 需要转义为 \.
  • RabbitMQ 策略使用 正则表达式 匹配队列名,. 在正则中表示"任意字符",需转义为 \. 才能匹配实际的点号。
Q2:expires:10000 的单位是什么?
  • 单位是 毫秒(10 秒 = 10000 毫秒)。
Q3:如何验证策略是否生效?
cmd 复制代码
curl -u admin:rmq@1234 "http://10.11.64.12:15672/api/policies/%2F"

或登录 RabbitMQ 管理界面查看 Policies 标签页。


5. 注意事项

  1. 权限要求 :用户需具备 administrator 标签或至少 policymaker 权限。
  2. 生产环境慎用:自动删除策略可能导致重要队列被误删,建议先在测试环境验证。
  3. 队列锁定:如果队列正在使用(有消费者连接),可能不会立即删除。

根据需求选择直接删除或自动化策略!

相关推荐
开源技术8 小时前
DNS详解——域名是如何解析的
http
三水不滴15 小时前
有 HTTP 了为什么还要有 RPC?
经验分享·笔记·网络协议·计算机网络·http·rpc
程序猿阿伟17 小时前
《分布式追踪Span-业务标识融合:端到端业务可观测手册》
分布式
BLSxiaopanlaile18 小时前
《凤凰架构-构建可靠的大型分布式系统》读书笔记 -关于网络通信安全性的一些总结
http·加密·认证授权·网络通信安全
消失的旧时光-194319 小时前
第十六课实战:分布式锁与限流设计 —— 从原理到可跑 Demo
redis·分布式·缓存
若水不如远方19 小时前
分布式一致性(三):共识的黎明——Quorum 机制与 Basic Paxos
分布式·后端·算法
会算数的⑨20 小时前
Kafka知识点问题驱动式的回顾与复习——(一)
分布式·后端·中间件·kafka
张小凡vip20 小时前
Kafka--使用 Kafka Connect 导入/导出数据
分布式·kafka
回忆是昨天里的海20 小时前
kafka概述
分布式·kafka
知识即是力量ol20 小时前
初识 Kafka(一):分布式流平台的定义、核心优势与架构全景
java·分布式·kafka·消息队列