删除RabbitMQ Queue
本章节指导如何删除Queue。删除Queue的操作有以下几种方式,您可以根据实际情况选择任意一种方式:
约束与限制
- 删除Queue后,该Queue下的所有配置(包括Exchange与Queue的绑定关系)也会被删除,且无法恢复。
前提条件
已创建Queue。
删除Queue(控制台)
- 登录管理控制台。
- 在管理控制台左上角单击
,选择RabbitMQ实例所在的区域。
- 在管理控制台左上角单击
,选择“应用服务 > 分布式消息服务 RabbitMQ”,进入RabbitMQ实例列表页面。
- 单击实例名称,进入实例详情页面。
- 在左侧导航栏选择“实例管理 > Vhost列表”,进入Vhost列表页面。
- 单击Vhost名称,进入Vhost详情页。
- 在“Queue”页签中,通过以下任意一种方法,删除Queue。
- 勾选Queue名称左侧的方框,可选一个或多个,单击信息栏左上侧的“删除Queue”。
- 在待删除的Queue所在行,单击“删除”。
删除Queue后,该Queue下的所有配置(包括Exchange与Queue的绑定关系)也会被删除,且无法恢复。
- 单击“确定”,完成Queue的删除。
删除的Queue已从Queue列表中移除,表明Queue已成功删除。
删除单个Queue(RabbitMQ WebUI)
- 登录RabbitMQ WebUI页面。
- 在“Queues”页签,单击需要删除的队列名称,进入队列详情页面。
图1 队列列表
- 单击“Delete Queue”,删除单个队列。
图2 删除单个队列
删除Queue后,该Queue下的所有配置(包括Exchange与Queue的绑定关系)也会被删除,且无法恢复。
在“Overview”区域的Queue列表中,查看删除的Queue已从中移除,表明Queue已成功删除。
批量删除Queue(RabbitMQ WebUI)
新增与待删除队列的前缀名称相同、且队列TTL为1ms的策略,通过此策略实现批量删除队列。
- 登录RabbitMQ WebUI页面。
- 在“Admin > Policies”页面中,新增一条策略。
图3 通过Policy批量删除队列
表1 策略参数说明 参数
说明
Name
策略的名称,用户自定义。
Pattern
队列匹配模式,填写队列名称,会匹配包含此队列名称的队列。
例如:设置为“.*”时,表示匹配所有队列。设置为“.*queue-name”时,表示匹配队列名称包含queue-name的所有队列。
Apply to
策略所适用的目标,选择“Queues”。
Priority
策略的优先级,数字越大,优先级越高。
Definition
定义TTL,单位为ms。填写“expires”参数,值设置为“1”,表示队列过期时间为1ms。
删除Queue后,该Queue下的所有配置(包括Exchange与Queue的绑定关系)也会被删除,且无法恢复。
- 单击“Add policy”。
在“Queues”页签“Overview”区域的Queue列表中,查看删除的Queue已从中移除,表明Queue已成功删除。
- 队列成功删除后,在“Admin > Policies”页面中,在2中新增的策略后,单击“Clear”,删除策略。
如果保留此策略,它对后续新建的队列依然生效,可能会出现误删除队列的情况。图4 删除策略