ALIYUN::AMQP::Queue类型用于创建Queue。
语法
{
"Type": "ALIYUN::AMQP::Queue",
"Properties": {
"DeadLetterExchange": String,
"MaximumPriority": Number,
"InstanceId": String,
"ExclusiveState": Boolean,
"DeadLetterRoutingKey": String,
"VirtualHost": String,
"MaxLength": Number,
"AutoDeleteState": Boolean,
"QueueName": String,
"MessageTTL": Number,
"AutoExpireState": Number
}
}
属性
属性名称 | 类型 | 必须 | 允许更新 | 描述 | 约束 |
InstanceId | String | 是 | 否 | 实例ID。 | 无 |
QueueName | String | 是 | 否 | 队列名称。 | 队列名称要求:
|
VirtualHost | String | 是 | 否 | Vhost名称。 | 只能包含字⺟、数字、短划线(-)、下划线(_)、半角句号(.)、井号(#)、正斜线(/)、at符号(@)。 ⻓度限制为1~255字符。 |
AutoDeleteState | Boolean | 否 | 否 | 是否自动删除。 | 取值:
|
AutoExpireState | Number | 否 | 否 | 队列的自动过期时间。 | 如果队列在指定时间内没有被访问,则会被自动删除。 说明 该参数对应的功能需要开通后才能使用。如需使用,请提交工单开通。 |
DeadLetterExchange | String | 否 | 否 | 死信Exchange。 | 该类Exchange是用来接收被拒绝的消息。 如果消费端拒绝一个不重新发送的消息,那么消息队列RabbitMQ版将会把消息路由到指定的死信Exchange,该Exchange再将消息路由到绑定的Queue进行存储。 |
DeadLetterRoutingKey | String | 否 | 否 | 死信Routing Key。 | 只能包含字⺟、数字、短划线(-)、下划线(_)、半角句号(.)、井号(#)、正斜线(/)、at符号(@)。 ⻓度限制为1~255字符。 |
ExclusiveState | Boolean | 否 | 否 | 是否为排他性Exchange。 | 取值:
|
MaximumPriority | Number | 否 | 否 | 不支持优先级功能。 | 无 |
MaxLength | Number | 否 | 否 | 队列中消息的最大数量。 | 当前版本不支持该参数。 如果超出队列中消息的最大数量,则先到达队列的消息将会被删除。 |
MessageTTL | Number | 否 | 否 | 消息在队列中的有效期。 | 取值要求:
|
返回值
Fn::GetAtt
QueueName:队列名称。
示例
YAML
格式
ROSTemplateFormatVersion: '2015-09-01'
Parameters:
InstanceId:
Type: String
Description: InstanceId
VirtualHost:
Type: String
Description: The name of the virtual host.
QueueName:
Type: String
Description: The name of the queue.
MaxLength: 255
Resources:
Queue:
Type: ALIYUN::AMQP::Queue
Properties:
InstanceId:
Ref: InstanceId
VirtualHost:
Ref: VirtualHost
QueueName:
Ref: QueueName
Outputs:
QueueName:
Description: The name of the queue.
Value:
Fn::GetAtt:
- Queue
- QueueName
JSON
格式
{
"ROSTemplateFormatVersion": "2015-09-01",
"Parameters": {
"InstanceId": {
"Type": "String",
"Description": "InstanceId"
},
"VirtualHost": {
"Type": "String",
"Description": "The name of the virtual host."
},
"QueueName": {
"Type": "String",
"Description": "The name of the queue.",
"MaxLength": 255
}
},
"Resources": {
"Queue": {
"Type": "ALIYUN::AMQP::Queue",
"Properties": {
"InstanceId": {
"Ref": "InstanceId"
},
"VirtualHost": {
"Ref": "VirtualHost"
},
"QueueName": {
"Ref": "QueueName"
}
}
}
},
"Outputs": {
"QueueName": {
"Description": "The name of the queue.",
"Value": {
"Fn::GetAtt": [
"Queue",
"QueueName"
]
}
}
}
}