You need to enable JavaScript to run this app.
导航
CreateTopic
最近更新时间:2023.01.11 11:49:42首次发布时间:2021.08.30 16:20:22

用 CreateTopic 接口创建 Kafka Topic。

使用说明

此接口用于在指定实例下创建一个 Kafka 的 Topic,用户可使用该 Topic 发布和订阅消息。

  • 此接口的 API Version 为 2018-01-01
  • 此接口的调用频率限制为 20 次/s,超出频率限制会报错 “AccountFlowLimitExceeded”。

请求参数

参数参数类型是否必选示例值说明
InstanceIdString必选kafka-****x实例 ID。

TopicName

String

必选

my_topic

待创建的 Topic 名称。必须符合以下命名规范:

  • 长度为 3~64 个字符。
  • 只能以英文或数字开头。
  • 支持的字符包括英文字母、数字、连字符(-)、下划线(_)和英文句号(.)。

AllAuthority

Bool

可选

true

待创建的 Topic 默认是否对所有用户都开启读写权限。

  • true:所有用户都具备此 Topic 的读写权限。
  • false:并非所有用户都具备此 Topic 的读写权限。默认情况下,用户对于此Topic 的权限沿用用户的默认权限,如果默认权限不满足需求,您也可以通过 Authorities 指定某个用户对于此 Topic 的自定义权限。
AuthoritiesList可选-自定义权限配置,即为某些用户设置对于此 Topic 的自定义权限。仅在 AllAuthority 为 false 时需要设置。详细信息请参考 Authority
DescriptionString可选描述信息Topic 的描述信息。长度不超过 128 个字符。

PartitionNumber

Integer

必选

12

Topic 分区数。取值范围为 1~300,默认为 12。如果实例中已创建了其他 Topic,则所有 Topic 的分区数之和不超过该实例的分区数上限。
如果分区数无法满足业务需求,您可以购买更多分区,提升实例的分区数量上限。详细说明请参考升级实例规格

ReplicaNumberInteger可选3Topic 副本个数。取值范围为 2 或 3,默认值为 3。

MinInsyncReplicaNumber

Integer

可选

2

Topic 的最小同步副本个数。
当同步副本个数小于配置值时,消息将无法写入对应 Topic。配置值越大,数据可靠性增加,但是可用性将会降低。默认值为副本数 -1。考虑到 Topic 的可用性,建议设置为副本数-1。
详细信息请参考修改参数配置

RetentionHour

Integer

可选

144

消息被保留的时间。
取值范围为 0~2160,参数单位为小时。默认为 72 小时。详细信息请参考修改参数配置

MaxMessageMegabyteInteger可选3可接收的最大消息大小,取值范围 1~12,单位为 MiB,默认值为 10。详细信息请参考修改参数配置

响应参数

null

示例

请求示例

POST https://kafka.volcengineapi.com/?Action=CreateTopic&Version=2018-01-01 HTTP/1.1
Accept: application/json
Content-Type: application/json
Host: kafka.volcengineapi.com
X-Date: 20210328T100802Z
Authorization: HMAC-SHA256 Credential=AK********/20210328/cn-beijing/kafka/request, SignedHeaders=x-date, Signature=********

{
  "TopicName": "test-plb1",
  "AllAuthority": false,
  "Authorities": [
    {
      "Name": "test",
      "Permission": "Read"
    }
  ],
  "ReplicaNumber": 3,
  "MinInsyncReplicaNumber": 2,
  "RetentionHour": 144,
  "MaxMessageMegabyte": 3,
  "InstanceId": "kafka-*****",
  "Description": "描述信息",
  "PartitionNumber": 12
}

响应示例

{
  "ResponseMetadata": {
    "RequestId": "****************",
    "Action": "CreateTopic",
    "Version": "2018-01-01",
    "Service": "kafka",
    "Region": "cn-beijing"
  },
  "Result": null
}