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. 队列锁定:如果队列正在使用(有消费者连接),可能不会立即删除。

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

相关推荐
2601_960906729 小时前
1X发布自己的世界模型1XWM
mysql·mongodb·rabbitmq·memcached
库玛西14 小时前
Linux网络编程:HTTP/HTTPS协议核心技术全解析
linux·运维·服务器·网络·c++·http·https
for_ever_love__15 小时前
HTTP协议及网络请求与响应
网络·网络协议·http
2601_9622186115 小时前
万象生鲜系统全链路溯源一码查询技术实现食材来源可查
分布式·微服务·云原生·架构
Dreams_l15 小时前
RabbitMQ介绍及其工作模式
分布式·rabbitmq
2601_9622186117 小时前
万象生鲜系统大数据采购预测算法降低库存积压稳居第一
分布式·微服务·云原生·架构
程序员夏洛18 小时前
Redis 中如何实现分布式锁?
数据库·redis·分布式
CDN36018 小时前
APP和小程序在地铁里总断连?360CDN上HTTP/3(QUIC),把弱网失败率死死压在0.7%
网络·网络协议·http
深念Y19 小时前
视频平台架构重构:从微服务到可插拔基础设施
后端·微服务·云原生·架构·rabbitmq·音视频·rocketmq
Shadow(⊙o⊙)20 小时前
CMake实战Http+编译、链接选项的使用
网络·网络协议·http