View a markdown version of this page

了解最大自动缩放任务数 - Amazon Managed Streaming for Apache Kafka
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)。

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

了解最大自动缩放任务数

该maxAutoscalingTaskCount参数是一个可选的容量字段,可用于 Amazon MSK Connect 中的自动扩展连接器。此参数允许您设置连接器自动扩展操作期间可以创建的最大任务数量的上限,从而更好地控制资源利用率和性能。

当您使用自动扩展容量模式时,Amazon MSK Connect 会自动覆盖您的连接器的tasks.max属性,其值与每个工作人员的工人数和 MCU 数量成正比。该maxAutoscalingTaskCount参数提供了一个额外的可配置选项,用于限制为连接器创建的最大任务数。

当您想要控制与 Kafka 集群中主题分区数量相关的并行度级别时,此功能特别有用。通过设置此限制,您可以优化性能并防止在自动计算的任务数超过工作负载要求时可能出现的低效任务分配。

配置要求

该maxAutoscalingTaskCount参数必须满足以下要求:

maxAutoscalingTaskCount ≥ maxWorkerCount

此要求通过为每位工作人员维护至少一项任务来确保资源的有效利用。系统强制执行此最低要求以优化连接器功能。

当您指定时maxAutoscalingTaskCount,该限制将在连接器创建后以及所有后续扩展事件期间立即生效。随着自动缩放操作期间工作人员数量的增加或减少,系统将继续遵守这一限制。该tasks.max值会根据每位工作人员的数量和 MCU 的数量成比例进行调整,但永远不会超过配置的值。maxAutoscalingTaskCount

如果您未指定此参数,则连接器使用标准计算,没有任何限制:tasks.max = workerCount × mcuCount × tasksPerMcu(其中 tasks PerMcu 为 2)。

何时使用 max AutoscalingTaskCount

考虑maxAutoscalingTaskCount在以下场景中使用:

  • 有限分区数:当您的 Kafka 主题的分区数量固定小于自动计算的任务数时,设置限制可防止创建没有工作可执行的空闲任务。

  • 性能优化:当您确定特定任务数可为工作负载提供最佳吞吐量时,您可以设置最大任务上限,以保持稳定的性能。

  • 资源管理:当您想要控制连接器的最大并行度和资源消耗时,无论有多少工作线程在运行。

示例

对于具有以下配置的连接器:

minWorkerCount: 1 maxWorkerCount: 4 mcuCount: 8 maxAutoscalingTaskCount: 15

如果没有maxAutoscalingTaskCount,当扩展到 4 个工作线程时,连接器将创建 64 个任务(4 个工作器 × 8 个 MCU × 每个 MCU 2 个任务)。maxAutoscalingTaskCount设置为 15 时,连接器仅创建 15 个任务,如果您的 Kafka 主题有 15 个或更少的分区,这可能更合适。