You need to enable JavaScript to run this app.
导航

Topic 使用建议

最近更新时间2024.01.15 11:10:55

首次发布时间2024.01.15 11:10:55

Topic 是火山引擎 Kafka 实例的基础资源。消息生产时写入到 Topic 中,消费时又从消息中读取出来。创建 Topic 时选择合适的参数配置,最大程度上保证实例内部数据和业务流量的均衡,发挥 Kafka 实例的最优能力。

分区数

分区是 Topic 内部存储数据的基础单元。每个 Topic 的分区都会在 Kafka 实例内部打散存放,消息写入与读取实际是从分区中进行读取。
为了保证分区在集群内部能够均匀的被打散,创建 Topic 时,Topic 的分区数应设置为节点数量的整数倍。Kafka 实例节点数和规格有关,大规格的 Kafka 实例节点数相对更多。例如 kafka.20.xrate.hw 规格的节点数量为 3,其每个 Topic 的分区数量应为 3 的整数倍,例如 3、6、9 等;kafka.1500.xrate.hw 规格的节点数量为 18,其每个 Topic 的分区数量应为 18 的整数倍,例如 18、36、54 等。创建实例后可以在实例的节点页面查看节点列表和当前规格对应的节点数量。操作步骤请参考查看节点信息
同时单个 Topic 内的分区数也不建议过多,否则容易触发消费端的重均衡,推荐单个 Topic 分区个数控制在 100 个以内。

副本数

副本数表示 Topic 中消息的冗余度。副本数越大,可靠性和可用性也越好,但相对应的也会占用更多的磁盘存储空间。
当前火山引擎 Kafka 实例支持创建副本数为 1 ~ 3 的 Topic。推荐创建 Topic 时使用 3 副本创建,提供最高的可用性与可靠性。若对于可靠性相对要求不高,则可以创建 2 副本的 Topic,降低一些可靠性和可用性的同时,获得更高的磁盘利用。在生产业务中不推荐使用 1 副本的 Topic,可靠性与可用性无法保证,仅推荐在前期功能测试阶段使用。

最小同步副本数

表示消费写入时要求的最小副本数,最少需要 1 个,最大不能大于副本数。创建 Topic 时推荐保持默认的配置。即副本数为 1 或者 2 时,最小同步副本数配置为 1;副本数为 3 时,最小同步副本数配置为 2。