ALIYUN::ROCKETMQ5::Topic类型用于ROCKETMQ5.0系列创建主题。

语法

{
  "Type": "ALIYUN::ROCKETMQ5::Topic",
  "Properties": {
    "InstanceId": String,
    "MessageType": String,
    "Remark": String,
    "TopicName": String
  }
}

属性

属性名称类型必须允许更新描述约束
InstanceIdString待创建主题所属的实例的ID。
MessageTypeString待创建主题的消息类型。取值:
  • TRANSACTION:事务消息。
  • FIFO:顺序消息。
  • DELAY:定时或延时消息。
  • NORMAL:普通消息。
说明 主题的类型和发送消息的类型必须一致。例如,您创建主题的类型为顺序消息,则该主题只能用于收发顺序消息,不能收发其他类型的消息。
RemarkString待创建主题的备注信息。
TopicNameString待创建主题的名称。用于标识主题,全局唯一。

取值要求:

  • 字符限制:支持字母a-z或A-Z、数字0~9以及下划线(_)、短划线(-)和百分号(%)。
  • 长度限制:1~60个字符。

保留字符限制,请参见使用限制

返回值

Fn::GetAtt

  • InstanceId:主题所属的实例的ID。
  • MessageType:主题的消息类型。
  • TopicName:主题的名称。

示例

  • YAML格式

    ROSTemplateFormatVersion: '2015-09-01'
    Parameters:
      InstanceId:
        Type: String
        Description: The ID of the instance.
    Resources:
      Topic:
        Type: ALIYUN::ROCKETMQ5::Topic
        Properties:
          InstanceId:
            Ref: InstanceId
          MessageType: NORMAL
          TopicName: TestTopic
    Outputs:
      InstanceId:
        Description: The ID of the instance.
        Value:
          Fn::GetAtt:
            - Topic
            - InstanceId
      MessageType:
        Description: The type of the message.
        Value:
          Fn::GetAtt:
            - Topic
            - MessageType
      TopicName:
        Description: The name of the topic.
        Value:
          Fn::GetAtt:
            - Topic
            - TopicName
  • JSON格式

    {
      "ROSTemplateFormatVersion": "2015-09-01",
      "Parameters": {
        "InstanceId": {
          "Type": "String",
          "Description": "The ID of the instance."
        }
      },
      "Resources": {
        "Topic": {
          "Type": "ALIYUN::ROCKETMQ5::Topic",
          "Properties": {
            "InstanceId": {
              "Ref": "InstanceId"
            },
            "MessageType": "NORMAL",
            "TopicName": "TestTopic"
          }
        }
      },
      "Outputs": {
        "InstanceId": {
          "Description": "The ID of the instance.",
          "Value": {
            "Fn::GetAtt": [
              "Topic",
              "InstanceId"
            ]
          }
        },
        "MessageType": {
          "Description": "The type of the message.",
          "Value": {
            "Fn::GetAtt": [
              "Topic",
              "MessageType"
            ]
          }
        },
        "TopicName": {
          "Description": "The name of the topic.",
          "Value": {
            "Fn::GetAtt": [
              "Topic",
              "TopicName"
            ]
          }
        }
      }
    }