参数 | 是否必选 | 说明 |
名称 | 是 | 填写 Topic 名称,名称需符合命名规则:只能包含字母、数字、下划线、“-”和“.”,不支持以“双下划线”开头。Topic 创建成功后名称无法更改。 |
备注 | 否 | 填写 Topic 说明信息,不超过64个字符。 |
分区数 | 是 | 一个物理上分区的概念,一个 Topic 可以包含一个或者多个 partition,CKafka 以 partition 作为分配单位。部署架构默认至少3节点,分区数起步建议为3,数据分布更均衡。分区数配置参考文档 配置客户端参数。 |
副本数 | 是 | Partition 的副本个数,用于保障 Partition 的高可用。为保障数据可靠性,默认开启2副本。副本数也算分区个数,例如客户创建了1个 Topic、6个分区、2个副本,那么分区额度一共用了1 × 6 × 2 = 12个。 说明: 设置为单副本会导致可用性无法保证,请谨慎操作。 |
标签 | 否 | |
retention.ms | 是 | Topic 维度的消息保留时间,默认为3天,范围1分钟到90天。超出设置的保留时长后,消息将被删除以保留足够的磁盘空间。 |
参数名 | 默认值 | 说明 |
消息时间戳类型 | LogAppendTime(推荐) | 定义消息中的时间戳类型: CreateTime:生产者创建这条消息的时间,由于客户端的时间可能和服务器时间存在偏差,需要检查写入的时间是否是正确的时间。 LogAppendTime:服务端 Broker 接收到消息的时间。 |
预设 ACL 策略 | 关闭 | |
cleanup.policy | delete | Topic 日志的清理策略: delete:日志按保存时间删除,根据配置的消息保留时间保存消息,在磁盘容量不足时会自动清理旧数据以保证服务可用性,适合普通消息队列场景。 compact:日志按 Key 压缩,确保相同 Key 的消息只保留最新的 Value。适用于系统宕机后恢复状态,系统重启后重新加载缓存等场景。例如使用 Kafka Connect 或 Confluent Schema Registry时,需要使用 Kafka Compact Topic 存储系统状态信息或配置信息。 delete.compact:组合策略,先压缩 Key 保留最新值,再删除过期数据。适用于混合型数据如社交消息流。 |
min.insync.replicas | 1 | 指定生产者发送消息时必须成功写入的最少同步副本(ISR)数量。范围在1到 Topic 最大副本数之间。值越高,数据安全性越强(容忍更多节点故障),但会降低可用性(当 ISR 不足时服务不可写)。 当 producer 设置 request.required.acks 为1时,min.insync.replicas 指定为 replicas 的最小数目。 |
unclean.leader.election.enable | true | 是否允许从非同步副本(Out-of-Sync Replicas, OSR)中选举新的 Leader。 true(默认):允许从 OSR 选举 Leader,优先保证可用性。 false:仅允许从同步副本(ISR)中选举 Leader,优先保证数据一致性。 |
segment.ms | - | Segment 分片滚动的时长,范围1 到90 天,最小单位为 ms。 |
retention.bytes | 默认为实例的消息保留大小 | 分区维度的消息保留大小,范围1 到1024 GB。 分区数 * retention.bytes = 当前 Topic 的消息保留大小,对于一个 Topic,如果同时设置了消息保留时间和消息保留大小,实际保留消息时会以先达到的阈值为准。(Serverless实例暂不支持配置此参数) |
max.message.bytes | - | 单条消息最大允许大小,范围 1KB 到 12MB。客户端发送数据时,会将发往同一个分区的数据聚合起来,统一发送,服务端会比较每一批次的消息大小。 |
参数 | 默认值 |
分区数 | 开启自动创建 Topic 时设置,默认至少3节点。 |
副本数 | 开启自动创建 Topic 时设置,默认2副本。 |
默认消息保留时长 | |
默认最大消息大小 | |
UncleanLeaderElectionEnable | |
消息时间戳类型 | 默认为 LogAppendTime,代表服务端 Broker 接收到消息的时间。 |
cleanup.policy | 默认为 delete,日志按保存时间删除。 |
min.insync.replicas | 默认为 1,用于指定生产者发送消息时必须成功写入的最少同步副本(ISR)数量。 |
文档反馈