You need to enable JavaScript to run this app.
文档中心
消息队列 RocketMQ版

消息队列 RocketMQ版

复制全文
下载 pdf
Topic管理
CreateTopic - 创建 topic
复制全文
下载 pdf
CreateTopic - 创建 topic
调用 CreateTopic 接口创建 Topic。
使用说明
在 RocketMQ 实例中,Topic 是消息发送与接收的基本单元,消息队列 RocketMQ版通过 Topic 对各类消息进行分类管理。消息的生产者将消息发送到 RocketMQ Topic 中,而消息的消费者则通过订阅该 RocketMQ Topic 来消费消息。
说明
每个实例的 Topic 数量配额与实例规格有关,例如各个规格实例可创建的 Topic 数量请参考产品规格
注意事项
请求频率:该接口请求频率限制为 100 次/秒;单用户请求频率限制为 20 次/秒
调试
API Explorer
您可以通过 API Explorer 在线发起调用,无需关注签名生成过程,快速获取调用结果。
请求参数
下方仅列出该接口特有的请求参数和部分公共参数。更多信息请见公共参数
Action string 必选 示例值:CreateTopic
要执行的操作,取值:CreateTopic。
Version string 必选 示例值:2023-01-01
API的版本,取值:2023-01-01。
QueueNumber integer 必选 示例值:12
设置当前 Topic 的队列数量,最大不可超过当前实例剩余可用队列数。每个实例规格的队列数量限制请参考产品规格
4.x 版本实例中创建 Topic 时,请参考以下说明设置队列数:
  • 全局顺序类型的 Topic 队列数默认为 1。其他类型 Topic 的队列数和计算规格有关,n3 及以下规格的队列数默认为 6,n3 以上规格的队列数默认是 broker 组数的两倍。
  • 队列数建议设置为计算节点数的倍数,否则可能造成不同 Broker 之间数据不均衡。例如规格 rocketmq.n3.x2.medium 的计算节点数为 3,队列数建议设置为 3 的倍数,即 3、6、9 等。
  • 5.x 版本实例中创建 Topic 时,请参考以下说明设置队列数:
  • 全局顺序类型的 Topic 队列数默认为 1。
  • 其他类型 Topic 的队列数默认是 broker 组数的两倍。
  • 非顺序场景性能不受队列个数影响,更多队列仅用于提升顺序消费并发性能。
MessageType integer 必选 示例值:0
消息类型。取值说明如下:
  • 0:普通消息
  • 1:事务消息
  • 2:分区顺序消息
  • 3:全局顺序消息
  • 4:延时消息
说明
  • 一个 Topic 只能承载一种消息类型。创建 Topic 后不支持修改此 Topic 承载的消息类型。
  • 对于分区顺序消息全局顺序消息类型的 Topic,服务节点异常时可能会出现短暂的消息乱序现象。
  • 延迟消息支持自定义毫秒级延迟,延迟时长最长为 3 天或消息保留时长的 3 倍(两者取较小值)。
AccessPolicies object[] 可选 示例值:/
每个 RocketMQ 密钥对于当前 Topic 的权限,支持批量设置权限。若未设置,每个密钥对于当前 Topic 维持密钥的默认权限。
AccessKey string 必选 示例值:C3OmUvlr6*****
RocketMQ 密钥的 AccessKey。
Authority string 必选 示例值:PUB
用户对于当前Topic的访问权限。
  • ALL:拥有发布、订阅权限。
  • PUB:拥有发布权限。
  • SUB:拥有订阅权限。
  • DENY:不具备发布或订阅权限。
Description string 可选 示例值:this is a test topic
Topic 的描述信息,长度为 0~128 个字符。
InstanceId string 必选 示例值:rocketmq-cnai1f0c29ca****
实例 ID。
TopicName string 必选 示例值:my_topic
Topic 的名称。命名规则如下:
  • 长度为 3~100 个字符。
  • 只能包含英文、数字、连字符(-)以及下划线(_)。
  • Topic 名称中不可包含以下保留字符或特殊前缀。
  • 保留字符:RMQ_SYS_TRANS_OP_HALF_TOPIC、BenchmarkTest、TBW102、OFFSET_MOVED_EVENT、SELF_TEST_TOPIC、RMQ_SYS_TRANS_HALF_TOPIC、SCHEDULE_TOPIC_XXXX、RMQ_SYS_TRACE_TOPIC
  • 特殊前缀:rocketmq-broker-、%RETRY%、rmq_sys_、%DLQ%
说明
  • 同一实例下 Topic 名称必须唯一,不同实例间的 Topic 名称可以重复。
  • 对于 2023 年 06 月 05 日及之前创建的 RocketMQ 实例,Topic 名称不可超过 100 个字符。
返回参数
下方仅列出本接口特有的返回参数。更多信息请参见返回结构
CreateSuccess boolean 示例值:true
创建是否成功。
ExpectMinimalTopicQueueNumber integer 示例值:1
期待的最小队列数。
请求示例
POST /?Action=CreateTopic&Version=2023-01-01 HTTP/1.1
Host: rocketmq.cn-beijing.volcengineapi.com
Content-Type: application/json; charset=UTF-8
X-Date: 20260109T083803Z
X-Content-Sha256: 287e874e******d653b44d21e
Authorization: HMAC-SHA256 Credential=Adfks******wekfwe/20260109/cn-beijing/RocketMQ/request, SignedHeaders=host;x-content-sha256;x-date, Signature=47a7d934ff7b37c03938******cd7b8278a40a1057690c401e92246a0e41085f
{
"QueueNumber": 12,
"MessageType": 0,
"InstanceId": "rocketmq-cnai1f0c29ca****",
"TopicName": "my_topic"
}
返回示例
{
"ResponseMetadata": {
"RequestId": "20260109163808008152244138B0****",
"Action": "CreateTopic",
"Version": "2023-01-01",
"Service": "RocketMQ",
"Region": "cn-beijing"
},
"Result": {
"CreateSuccess": true,
"ExpectMinimalTopicQueueNumber": 1
}
}
错误码
下表为您列举了该接口与业务逻辑相关的错误码。公共错误码请参见公共错误码文档。
状态码
错误码
错误信息
说明
200
OK
OK
成功。
400
QuotaExceeded
Quota Limited.
资源超配额 quota。
400
InvalidPara
The specified parameter is not valid.
参数值无效。
400
MissingParameter
The request body is missing a required parameter %s.
缺少%s参数。
400
UnsupportedParameter
The specified parameter %s is unsupported.
不支持%s参数。
400
InvalidParameter
The specified parameter %s is not valid.
参数值%s无效,请检查后重试。
400
OperationDenied.InvalidRequest
The request that you specified is not valid.
请求异常,请检查后重试。
400
QuotaExceeded.QueueNumber
The number of queue exceeds the limit.
队列数量超出上限。
400
QuotaExceeded.TopicNumber
The number of topic exceeds the limit.
Topic 数量超出上限。
400
InvalidTopicName.AlreadyExists
The specified topic name already exists.
Topic 名称已存在。
403
OperationDenied.VersionUnsupported
The current instance version does not support this operation.Please upgrade the instance and try again.
当前实例版本不支持指定操作,请升级实例后再试。
403
OperationDenied.InvalidInstanceStatus
The operation is not valid for the current status of the instance.
当前实例状态不允许执行该操作。
403
OperationDenied.ResourceOccupied
The resource is busy now, please try again later.
资源繁忙,可能由于指定资源正在被访问或回收。
403
OperationDenied.AccountNotAuthorized
You are not authorized to perform this operation.
您不具备相关权限,请授权或切换账号后重试。
404
InvalidInstanceId.NotFound
The specified Instance ID does not exist.
实例不存在。
404
InvalidInstanceId_NotFound
The specified Instance ID does not exist.
实例不存在。
404
InvalidAccessKeyId.NotFound
The specified accessKey does not exist.
AccessKey 不存在。
500
ServerInternalError
The request failed due to some unknown error, exception or failure.
服务内部错误。
500
ResourceIsBusy
The resource is busy now, please try again later.
资源繁忙,可能由于指定资源正在被访问或回收。
500
InternalError
The request failed due to some unknown error, exception or failure.
内部错误,请稍后再试。
503
ServiceUnavailable
The request failed due to a temporary failure of the server.
当前服务暂时不可用。
最近更新时间:2026.02.13 18:31:52
这个页面对您有帮助吗?
有用
有用
无用
无用