
# 创建RabbitMQ Queue
Queue用于存储消息，每个消息都会被发送到一个或多个Queue中，生产者生产消息并最终投递到Queue中，消费者可以从Queue中拉取消息进行消费。
多个消费者可以订阅同一个Queue，此时Queue中的消息会被平均分摊给多个消费者进行处理，而不是每个消费者都收到所有的消息。
本章节指导如何在控制台创建Queue。
#### 约束与限制
- RabbitMQ 3.x.x版本实例的Queue名称以特殊字符开头，例如点号"."，可能会导致监控数据无法显示。Queue名称如果包含特殊字符"%"、"\|"、"/"、"."、"-"，会导致Queue名称与监控页面不一致，在监控页面中特殊字符会以"_"显示。例如：Queue名称为Queue.1%1\|2-3/，此时监控中显示的Queue名为"Queue_1_1_2_3_"。
- 在云监控中特殊字符"."按5个字符计算长度。如果RabbitMQ 3.x.x版本实例的Queue名称包含"."，且经此规则计算后的总长度超过256个字符，可能会导致监控数据无法显示。
- RabbitMQ AMQP-0-9-1版本实例的Queue名称如果包含特殊字符"%"、"\|"、"/"、"."、"-"，会导致Queue名称与监控页面不一致，在监控页面中特殊字符会以"_"显示。例如：Queue名称为Queue.1%1\|2-3/，此时监控中显示的Queue名为"Queue_1_1_2_3_"。
 
#### 前提条件
已[创建Vhost](https://support.huaweicloud.com/usermanual-rabbitmq/rabbitmq_ug_0022.html)。
#### 创建RabbitMQ Queue
1. 登录[RabbitMQ控制台](https://console.huaweicloud.com/dms/?engine=rabbitMQ&locale=zh-cn#/queue/manager/newRabbitMQList)。
2. 在管理控制台左上角单击![](https://support.huaweicloud.com/usermanual-rabbitmq/zh-cn_image_0143929918.png)，选择RabbitMQ实例所在的区域。
3. 单击实例名称，进入实例概览页面。
4. 在左侧导航栏选择"实例管理 \> Vhost列表"，进入Vhost列表页面。
5. 单击Vhost名称，进入Vhost详情页。
6. 在"Queue"页签中，单击"创建Queue"，弹出"创建Queue"对话框。
7. 参考[表1]，设置Queue的名称和配置信息。
   
    表1Queue参数说明 
   | 参数     | 说明                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
   |:---|:---|
   | 名称     | 系统为您自动生成了Queue名称，您可以根据需要修改。 - 3.x.x版本的Queue名称需要符合以下规则：只能由英文字母、数字、点、百分号、竖线、中划线、下划线、斜杠组成，长度为2\~128个字符，且名称不能为".."。  - AMQP-0-9-1版本的Queue名称需要符合以下规则：只能由英文字母、数字、点、百分号、竖线、中划线、下划线、斜杠组成，长度2\~64字符（每个特殊字符按3个字符计算长度），且名称不能为".."。   创建Queue后不能修改名称。 |
   | 持久化    | RabbitMQ 3.x.x版本需要设置此参数。RabbitMQ AMQP-0-9-1版本Queue默认开启持久化。 是否开启Queue持久化。 - 开启：该Queue在服务器重启后仍然存在。  - 不开启：该Queue在服务器重启后会被删除，需要重新创建。                                                                                                               |
   | 自动删除   | 是否开启自动删除Queue。 - 开启：当订阅该Queue消息的最后一个消费者取消订阅后，该Queue将被自动删除。  - 不开启：当订阅该Queue消息的最后一个消费者取消订阅后，不会删除该Queue。                                                                                                                                            |
   | 死信交换器  | 在下拉框中选择死信消息发送的Exchange。                                                                                                                                                                                                                                                                                                                                                                                                                                                |
   | 死信路由键  | 设置死信消息的Routing Key，即死信Exchange会将消息发送至匹配该死信Routing Key的Binding Key所对应的Queue。 不支持输入中文字符。                                                                                                                                                                                                                                                                                                                                              |
   | 消息过期时间 | 消息的存活时间，单位为ms。超过消息过期时间，消息还未被成功消费，就会变为死信消息，该消息将会被发送到死信Exchange。                                                                                                                                                                                                                                                                                                                                                                                                         |
   | 最大优先级  | 仅RabbitMQ AMQP-0-9-1版本包含此参数。 设置Queue的优先级，取值范围为1\~9。数值越大，优先级越高。                                                                                                                                                                                                                                                                                                                                                                       |
   | 惰性队列模式 | 仅RabbitMQ 3.x.x版本包含此参数。 是否开启惰性队列。 - 开启：惰性队列会尽可能将消息存入磁盘，待消费者消费相应消息时再加载至内存，以此减少内存消耗。  - 不开启：消息将直接存储于内存中。                                                                                                         |
      
   
   
8. 单击"确定"，完成Queue的创建。 
   在"Queue"页签中，查询新创建的Queue。
   
   
 
#### 相关文档
如果您希望通过API创建Queue，请参考[创建Queue](https://support.huaweicloud.com/api-rabbitmq/CreateQueue.html)。
