

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

# 为作业设置资源限制
<a name="build-job-limits"></a>

提交到 Deadline Cloud 的作业可能取决于多个作业之间共享的资源。例如，对于特定资源，农场的工人人数可能多于浮动许可证。或者，共享文件服务器可能只能同时向有限数量的工作人员提供数据。在某些情况下，一个或多个作业可能会占用所有这些资源，从而在新员工开始工作时由于资源不可用而导致错误。

为了帮助解决这个问题，你可以对这些受*限*的资源使用限制。Deadline Cloud 考虑了受限资源的可用性，并使用这些信息来确保在新员工启动时资源可用，从而降低由于资源不可用而导致工作失败的可能性。

为整个服务器场创建了限制。提交到队列的作业只能获得与队列关联的限制。如果您为与队列无关的作业指定限制，则该作业不兼容且无法运行。

要使用限制，您 
+ [创建限制](job-limit-create.md)
+ [关联限制和队列](job-limit-associate.md)
+ [提交需要限制的职位](job-limit-job.md)

**注意**  
如果您在与限制无关的队列中运行一个资源受限的作业，则该作业可能会消耗所有资源。如果您的资源受限，请确保使用该资源的队列中作业中的所有步骤都与限制相关联。

对于在服务器场中定义的限制、与队列关联的限制以及在作业中指定的限制，可能会发生以下四种情况之一：
+ 如果您创建了限制，将其与队列关联并在作业的模板中指定了限制，则该作业将运行并仅使用限制中定义的资源。
+ 如果您创建了限制，在作业模板中指定该限制，但不要将限制与队列相关联，则该作业将被标记为不兼容且无法运行。
+ 如果您创建了限制，请勿将其与队列关联，也未在作业模板中指定限制，则作业会运行，但不会使用该限制。
+ 如果您根本不使用限制，则作业就会运行。

如果您将限制关联到多个队列，则这些队列将共享受该限制约束的资源。例如，如果您创建的限制为 100，而一个队列使用 60 个资源，则其他队列只能使用 40 个资源。资源被释放后，任务可以从任何队列中获取该资源。

Deadline Cloud 提供了两个AWS CloudFormation指标来帮助您监控限额提供的资源。您可以监控当前使用的资源数量以及限制中可用的最大资源数量。有关更多信息，请参阅 De *adline Cloud 开发者指南*中的[资源限制指标](https://docs.aws.amazon.com/deadline-cloud/latest/developerguide/cloudwatch-metrics.html#cloudwatch-metrics-limits)。

您可以对作业模板中的作业步骤应用限制。当您在步骤的`amounts`部分中指定限制的金额要求名称，并且与任务队列关联的限制与该限制关联时，为该步骤安排的任务将受到资源限制的限制。`hostRequirements` `amountRequirementName`

如果某个步骤需要的资源受到达到限制的限制，则该步骤中的任务将不会由其他工作人员接管。

您可以对一个任务步骤应用多个限制。例如，如果该步骤使用两个不同的软件许可证，则可以为每个许可证应用单独的限制。如果一个步骤需要两个限制，并且已达到其中一个资源的限制，则在资源可用之前，该步骤中的任务不会被其他工作人员接管。

## 停止和删除限制
<a name="job-limit-stop-delete"></a>

当您停止或删除队列与限制之间的关联时，使用该限制的作业会停止从需要此限制的步骤中调度任务，并阻止为步骤创建新会话。

处于 READY 状态的任务仍处于就绪状态，任务会自动恢复，队列和限制之间的关联再次变为活动状态。您无需重新排队任何作业。

停止或删除队列与限制之间的关联时，在如何停止运行任务方面有两种选择：
+ 停止和取消任务 — 会话达到限制的工作人员会取消所有任务。
+ 停止并完成正在运行的任务 — 会话达到限制的工作人员完成任务。

使用控制台删除限制时，工作人员首先会立即停止运行任务，或者最终在任务完成后停止运行。删除关联后，会发生以下情况：
+ 需要限制的步骤标记为 “不兼容”。
+ 包含这些步骤的整个任务都将被取消，包括不需要限制的步骤。
+ 该作业被标记为不兼容。

如果与限制关联的队列的关联队列具有与限制的数量要求名称相匹配的队列，则该队列将继续处理具有指定限制的任务。