Queue管理

更新时间:
重要

本文中含有需要您注意的重要提示信息,忽略该信息可能对您的业务造成影响,请务必仔细阅读。

Queue是指消息队列,云消息队列 RabbitMQ 版的消息都会被投入到一个或多个Queue中。本文介绍如何在云消息队列 RabbitMQ 版控制台创建消息的存储资源Queue、查看Dashboard大盘、被Exchange绑定、向指定Queue发送消息、查看Consumer Tag、清空Queue和删除Queue。

背景信息

Consumer Tag是Consumer客户端的标识符。您可以在云消息队列 RabbitMQ 版的Consumer客户端设置Consumer Tag。如果您没有在云消息队列 RabbitMQ 版的Consumer客户端设置Consumer Tag,云消息队列 RabbitMQ 版服务端会为您自动生成一个唯一的Consumer Tag。

如何设置Consumer Tag,请参见客户端示例代码订阅消息

重要
  • Consumer Tag必须保持唯一,即已被某个Consumer使用的Consumer Tag不可同时被另一个Consumer使用。

  • Consumer Tag在同一个channel内有效,即已在某个channel内被创建的Consumer Tag不可在另一个channel内被使用。

创建Queue

  1. 登录云消息队列 RabbitMQ 版控制台,然后在左侧导航栏选择实例列表

  2. 实例列表页面的顶部菜单栏选择地域,然后在实例列表中,单击目标实例名称。

  3. 在左侧导航栏,单击Queue 列表

  4. Queue 列表页面,在当前 Vhost右侧的切换下拉列表中,选择Vhost,单击创建 Queue

  5. 创建 Queue面板,在Queue 名称文本框输入Queue的名称,选择是否为Auto Delete类型,单击高级选项,设置Queue的参数,然后单击确定

    参数

    描述

    说明

    Queue 名称

    Queue的名称

    • 只能包含字母、数字、短划线(-)、下划线(_)、半角句号(.)、井号(#)、正斜线(/)、at符号(@)。

    • 长度限制在1~255字符。

    • 创建后无法修改,只能删除重建。

    • 以amq.开头的为保留字段,因此不能使用。例如:amq.test。

    Auto Delete

    最后一个Consumer取消订阅后,Queue是否自动删除。

    • true:在订阅该Queue消息的最后一个Consumer取消订阅该Queue的消息后,自动删除该Queue。

    • false:在订阅该Queue消息的最后一个Consumer取消订阅该Queue的消息后,不自动删除该Queue。

    高级选项

    Queue的参数设置,可用于设置死信Exchange、死信Routing Key和消息存活时间。

    • DeadLetterExchange:指定死信消息发送的目标Exchange。

    • DeadLetterRoutingKey:指定死信消息的Routing Key,即死信Exchange会将消息发送至匹配该死信Routing Key所对应的Queue。

    • MessageTTL:消息存活时间,单位毫秒(ms)。在指定时间内未被成功消费的消息会变成死信消息,该消息将会被发送到死信Exchange。更多信息,请参见消息存活时间

查看统计数据

您可以查看各种指标数据,帮助您及时发现和定位问题。

  1. Queue 列表页面,选择指定Queue,在其操作列单击详情

  2. Queue 详情页面单击监控指标Dashboard页签。

    实例类型不同,统计数据不同。具体如下:

    • 企业版和铂金版:支持查看基于阿里云ARMS Prometheus监控服务和Grafana的指标信息。关于Dashboard详细信息和指标信息,请参见Dashboard

    • 普通版/专业版:通过云监控提供指标监控数据。关于云监控的详细信息和指标信息,请参见监控指标

      说明

      云消息队列 RabbitMQ 版不再支持开通新的普通版实例,此处指存量的普通版实例。

查看Consumer Tag

重要

云消息队列 RabbitMQ 版仅支持查看在线Consumer客户端的Consumer Tag,不支持查看离线Consumer客户端的Consumer Tag,您需要确保要查看Consumer Tag的Consumer客户端处于在线状态。

Queue 列表页面,选择指定Queue,在其操作列,选择更多 > Consumer Tag 列表

被Exchange绑定

  1. Queue 列表页面,选择指定Queue,在其操作列单击详情

  2. Queue 详情页面单击被绑定信息页签,单击添加被绑定

  3. 添加被绑定面板,选择源Exchange,在Routing Key文本框输入Routing Key,然后单击确定

    说明

    若被绑定的Exchange的类型为x-consistent-hash时,Routing Key表示绑定的Queue的权重,只能设置为整数,取值范围为[1~20]。

发送消息

Queue添加被绑定关系后,可直接在控制台发送消息,将消息从源Exchange发送到指定的Queue中。

  1. Queue 列表页面,选择指定Queue,在其操作列单击详情

  2. Queue 详情页面,选择被绑定信息页签。

  3. 在被绑定关系列表中,选择指定的绑定关系,在其操作列单击发送消息

  4. 在弹出的发送消息面板中输入messageIdmessageBody,然后单击确定

清空Queue

Queue 列表页面,选择指定Queue,在其操作列,选择更多 > 清空消息

删除Queue

警告

删除Queue时,Queue中未被消费的消息会被同时删除,且不可恢复。请您谨慎操作。

  1. Queue 列表页面,根据需要选择如下任意一种方式删除Queue。

    • 删除单个Queue:找到要删除的Queue,在其右侧操作列,选择更多 > 删除

      您也可以单击目标Queue,或在其右侧操作列,单击详情,在Queue 详情页面右上角单击删除

    • 删除多个Queue:选中要删除的Queue,单击Queue列表下方的批量删除

  2. 提示对话框,认真阅读提示信息,单击确认