

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# Creare limiti di risorse per i lavori
<a name="build-job-limits"></a>

I lavori inviati a Deadline Cloud possono dipendere da risorse condivise tra più lavori. Ad esempio, un'azienda agricola può avere più lavoratori rispetto alle licenze fluttuanti per una risorsa specifica. Oppure un file server condiviso può essere in grado di fornire dati solo a un numero limitato di lavoratori contemporaneamente. In alcuni casi, uno o più lavori possono richiedere tutte queste risorse, causando errori dovuti alla mancanza di risorse all'ingresso di nuovi lavoratori. 

Per risolvere questo problema, puoi utilizzare *dei limiti* per queste risorse limitate. Deadline Cloud tiene conto della disponibilità di risorse limitate e utilizza tali informazioni per garantire che le risorse siano disponibili all'avvio dei nuovi dipendenti, in modo che i lavori abbiano una minore probabilità di fallire a causa della mancanza di risorse.

I limiti vengono creati per l'intera azienda agricola. I lavori inviati a una coda possono acquisire solo i limiti associati alla coda. Se si specifica un limite per un lavoro non associato alla coda, il lavoro non è compatibile e non verrà eseguito.

Per utilizzare un limite, devi 
+ [Crea un limite](job-limit-create.md)
+ [Associa un limite e una coda](job-limit-associate.md)
+ [Invia un lavoro che richiede dei limiti](job-limit-job.md)

**Nota**  
Se si esegue un processo con risorse limitate in una coda non associata a un limite, tale processo può consumare tutte le risorse. Se disponi di una risorsa limitata, assicurati che tutti i passaggi dei lavori nelle code che utilizzano la risorsa siano associati a un limite.

Per i limiti definiti in una farm, associati a una coda e specificati in un lavoro, può succedere una delle quattro cose seguenti:
+ Se si crea un limite, lo si associa a una coda e si specifica il limite nel modello di un lavoro, il processo viene eseguito e utilizza solo le risorse definite nel limite.
+ Se si crea un limite, lo si specifica in un modello di processo, ma non si associa il limite a una coda, il processo viene contrassegnato come incompatibile e non verrà eseguito.
+ Se si crea un limite, non lo si associa a una coda e non si specifica il limite nel modello di un processo, il processo viene eseguito ma non utilizza il limite.
+ Se non si utilizza affatto un limite, il processo viene eseguito.

Se si associa un limite a più code, le code condividono le risorse vincolate dal limite. Ad esempio, se si crea un limite di 100 e una coda utilizza 60 risorse, le altre code possono utilizzare solo 40 risorse. Quando una risorsa viene rilasciata, può essere utilizzata da un'operazione da qualsiasi coda.

Deadline Cloud fornisce due AWS CloudFormation metriche per aiutarti a monitorare le risorse fornite da un limite. Puoi monitorare il numero attuale di risorse in uso e il numero massimo di risorse disponibili entro il limite. Per ulteriori informazioni, consulta le [metriche relative al limite delle risorse](https://docs.aws.amazon.com/deadline-cloud/latest/developerguide/cloudwatch-metrics.html#cloudwatch-metrics-limits) nella *Deadline Cloud Developer Guide*.

Applichi un limite a una fase di lavoro in un modello di lavoro. Quando si specifica la quantità, il nome del requisito di un limite nella `amounts` sezione `hostRequirements` di una fase e un limite corrispondente `amountRequirementName` viene associato alla coda del lavoro, le attività pianificate per questa fase sono vincolate dal limite della risorsa.

Se una fase richiede una risorsa limitata da un limite raggiunto, le attività di quella fase non verranno raccolte da altri lavoratori.

È possibile applicare più di un limite a una fase di lavoro. Ad esempio, se la fase utilizza due licenze software diverse, è possibile applicare un limite separato per ciascuna licenza. Se una fase richiede due limiti e viene raggiunto il limite per una delle risorse, le attività di quella fase non verranno acquisite da altri lavoratori finché le risorse non saranno disponibili.

## Interruzione ed eliminazione dei limiti
<a name="job-limit-stop-delete"></a>

Quando si interrompe o si elimina l'associazione tra una coda e un limite, un job che utilizza il limite interrompe la pianificazione delle attività relative ai passaggi che richiedono tale limite e blocca la creazione di nuove sessioni per un passaggio.

Le attività che si trovano nello stato READY rimangono pronte e le attività riprendono automaticamente quando l'associazione tra la coda e il limite diventa nuovamente attiva. Non è necessario richiedere alcun lavoro.

Quando interrompi o elimini l'associazione tra una coda e un limite, hai due scelte su come interrompere l'esecuzione delle attività:
+ Interrompi e annulla le attività: i lavoratori con sessioni che hanno raggiunto il limite annullano tutte le attività.
+ Interrompi e termina le attività in esecuzione: i lavoratori con sessioni che hanno raggiunto il limite completano le proprie attività.

Quando si elimina un limite utilizzando la console, i lavoratori interrompono innanzitutto l'esecuzione delle attività immediatamente o alla fine una volta completate. Quando l'associazione viene eliminata, accade quanto segue: 
+ Le fasi che richiedono il limite sono contrassegnate come non compatibili.
+ L'intero processo contenente tali passaggi viene annullato, compresi i passaggi che non richiedono il limite.
+ Il lavoro è contrassegnato come non compatibile.

Se alla coda associata al limite è associata una flotta con una capacità corrispondente all'importo richiesto (nome del limite), tale flotta continuerà a elaborare i lavori con il limite specificato.

# Crea un limite
<a name="job-limit-create"></a>

Puoi creare un limite utilizzando la console Deadline Cloud o l'[CreateLimit operazione nell'API Deadline](https://docs.aws.amazon.com/deadline-cloud/latest/APIReference/API_CreateLimit.html) Cloud. I limiti sono definiti per una fattoria, ma associati alle code. Dopo aver creato un limite, è possibile associarlo a una o più code.

**Per creare un limite**

1. Dalla dashboard della console Deadline Cloud ([console Deadline Cloud](https://console.aws.amazon.com/deadlinecloud/home)), seleziona la farm per cui desideri creare una coda.

1. **Scegli la farm a cui aggiungere il limite, scegli la scheda **Limiti**, quindi scegli Crea limite.**

1. Fornisci i dettagli del limite. Il **nome del requisito di importo** è il nome utilizzato nel modello di lavoro per identificare il limite. Deve iniziare con il prefisso **amount.** seguito dal nome dell'importo. Il nome del requisito relativo all'importo deve essere univoco nelle code associate al limite.

1. Se scegli **Imposta un importo massimo**, questo è il numero totale di risorse consentite da questo limite. Se scegli **Nessun importo massimo, l'**utilizzo delle risorse non è limitato. Anche quando l'utilizzo delle risorse non è limitato, viene emessa la CloudWatch metrica `CurrentCount` Amazon in modo da poter monitorare l'utilizzo. Per ulteriori informazioni, consulta le [CloudWatchmetriche](https://docs.aws.amazon.com/deadline-cloud/latest/developerguide/cloudwatch-metrics.html) nella *Deadline* Cloud Developer Guide.

1. Se conosci già le code che devono utilizzare il limite, puoi sceglierle ora. Non è necessario associare una coda per creare un limite.

1. Scegli **Crea limite**.

# Associa un limite e una coda
<a name="job-limit-associate"></a>

Dopo aver creato un limite, puoi associare una o più code al limite. Solo le code associate a un limite utilizzano i valori specificati nel limite.

Si crea un'associazione con una coda utilizzando la console Deadline Cloud o l'[CreateQueueLimitAssociation operazione nell'API Deadline](https://docs.aws.amazon.com/deadline-cloud/latest/APIReference/API_CreateQueueLimitAssociation.html) Cloud.

**Per associare una coda a un limite**

1. Dalla dashboard della console Deadline Cloud ([console Deadline Cloud](https://console.aws.amazon.com/deadlinecloud/home)), seleziona la farm in cui desideri associare un limite a una coda.

1. **Scegli la scheda **Limiti**, scegli il limite a cui associare una coda, quindi scegli Modifica limite.**

1. Nella sezione **Associa code**, scegli le code da associare al limite.

1. Scegli **Save changes** (Salva modifiche).

# Invia un lavoro che richiede dei limiti
<a name="job-limit-job"></a>

Puoi applicare un limite specificandolo come requisito dell'host per il lavoro o la fase del lavoro. Se non si specifica un limite in una fase e tale fase utilizza una risorsa associata, l'utilizzo della fase non viene conteggiato nel limite quando i lavori sono pianificati.

Alcuni mittenti di Deadline Cloud ti consentono di impostare un requisito di host. Puoi specificare il nome del requisito relativo all'importo del limite nel mittente per applicare il limite.

Se il mittente non supporta l'aggiunta dei requisiti dell'host, puoi anche applicare un limite modificando il modello di lavoro relativo al lavoro.

**Per applicare un limite a una fase di lavoro nel pacchetto di lavoro**

1. Apri il modello di lavoro per il lavoro utilizzando un editor di testo. Il modello di lavoro si trova nella directory dei pacchetti di lavoro relativa al lavoro. Per ulteriori informazioni, consulta [Job bundles](https://docs.aws.amazon.com/deadline-cloud/latest/developerguide/build-job-bundle.html) nella *Deadline Cloud Developer Guide*.

1. Trova la definizione della fase a cui applicare il limite.

1. Aggiungi quanto segue alla definizione del passo. *amount.name*Sostituiscilo con il nome del requisito relativo all'importo del limite. Per un utilizzo tipico, è necessario impostare il `min` valore su 1.

------
#### [ YAML ]

   ```
     hostRequirements:
       amounts:
       - name: amount.name
         min: 1
   ```

------
#### [ JSON ]

   ```
   "hostRequirements": {
       "amounts": [
           {
               "name": "amount.name",
               "min": "1"
           }
       }
   }
   ```

------

   È possibile aggiungere più limiti a una fase di lavoro come segue. Sostituisci *amount.name\$11* e *amount.name\$12* inserisci i nomi dei requisiti relativi agli importi indicati nei tuoi limiti.

------
#### [ YAML ]

   ```
     hostRequirements:
       amounts:
       - name: amount.name_1
         min: 1
       - name: amount.name_2
         min: 1
   ```

------
#### [ JSON ]

   ```
   "hostRequirements": {
       "amounts": [
           {
               "name": "amount.name_1",
               "min": "1"
           },
           {
               "name": "amount.name_2",
               "min": "1"
           }
       }
   }
   ```

------

1. Salva le modifiche al modello di lavoro.