AWS Batch
用户指南
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

作业超时

您可以为任务配置超时时间,以便在某个任务运行的时间超过超时时间时让 AWS Batch 终止该任务。例如,您可能有一个作业,并且您知道该作业只需 15 分钟即可完成。有时,您的应用程序会陷入循环并永远运行,因此您可以将超时设置为 30 分钟以终止卡住的作业。

您可以指定一个 attemptDurationSeconds 参数,该参数必须至少为 60 秒,在您的任务定义中,或者在您提交任务时。当此秒数已通过以下任务尝试的 startedAt 时间戳时,AWS Batch 会终止该任务。在计算资源上,作业的容器会收到 SIGTERM 信号,以便为应用程序提供正常关闭的机会。如果容器在 30 秒后仍在运行,则会发送 SIGKILL 信号以强制关闭容器。

超时终止是基于最佳效果来处理的。您不应期望超时终止正好在作业尝试超时时执行(可能有几秒钟的延迟)。如果您的应用程序需要精确的超时执行,您应该在该应用程序中实施此逻辑。如果您有大量任务同时超时,超时终止的行为将类似于先入先出队列,在此队列中,任务是成批终止的。

如果某个任务因超过超时时间而终止,它不会被重试。如果任务尝试自行失败,则当启用了重试并且超时倒计时对新尝试重新开始时,该任务可能会重试。

对于数组任务,子任务与父任务具有相同的超时配置。

有关提交带超时配置的 AWS Batch 作业的信息,请参阅提交作业