

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à.

# Configura le funzioni Lambda durable
<a name="durable-configuration"></a>

Le impostazioni di esecuzione durature controllano per quanto tempo può essere eseguita la AWS Lambda funzione, per quanto tempo il servizio conserva la cronologia delle esecuzioni e quale AWS KMS chiave crittografa i dati di esecuzione. Configura queste impostazioni per consentire un'esecuzione duratura della tua funzione.

## Abilita un'esecuzione duratura
<a name="durable-config-settings"></a>

Configura l'`DurableConfig`oggetto durante la creazione della funzione per impostare il timeout di esecuzione e la conservazione della cronologia. È possibile abilitare l'esecuzione duratura solo durante la creazione di una funzione. Non è possibile abilitarlo su funzioni esistenti.

------
#### [ AWS CLI ]

```
aws lambda create-function \
  --function-name my-durable-function \
  --runtime nodejs24.x \
  --role arn:aws:iam::123456789012:role/my-durable-role \
  --handler index.handler \
  --zip-file fileb://function.zip \
  --durable-config '{"ExecutionTimeout": 3600, "RetentionPeriodInDays": 30, "KMSKeyArn": "arn:aws:kms:us-east-1:111122223333:key/key-id"}'
```

------
#### [ CloudFormation ]

```
Resources:
  MyDurableFunction:
    Type: AWS::Lambda::Function
    Properties:
      FunctionName: my-durable-function
      Runtime: nodejs24.x
      Handler: index.handler
      Code:
        ZipFile: |
          // Your durable function code
      DurableConfig:
        ExecutionTimeout: 3600
        RetentionPeriodInDays: 30
        KMSKeyArn: "arn:aws:kms:us-east-1:111122223333:key/key-id"
```

------

**Parametri di configurazione: **
+ `ExecutionTimeout`: obbligatorio Il tempo massimo in secondi che può essere eseguita un'esecuzione duratura prima che Lambda interrompa l'esecuzione. Questo timeout si applica all'intera esecuzione duratura, non alle singole invocazioni di funzioni. È necessario specificare `ExecutionTimeout` ogni volta che si fornisce`DurableConfig`; la creazione di una funzione con una configurazione duratura ma senza timeout di esecuzione ha esito negativo con un. `InvalidParameterValueException` Intervallo valido: 1—31622400.
+ `RetentionPeriodInDays` : Opzionale. Il numero di giorni in cui conservare la cronologia delle esecuzioni dopo il completamento di un'esecuzione duratura. Dopo questo periodo, la cronologia delle esecuzioni non è più disponibile tramite l'`GetDurableExecutionHistory`API. Intervallo valido: 1—90. Predefinito: 14.
+ `KMSKeyArn` : Opzionale. L'ARN di una chiave gestita dal cliente per crittografare i dati di esecuzione durevoli. Per ulteriori informazioni, vedere [ Crittografia dei dati di esecuzione duratura di Lambda. ](durable-encryption.md)

Per il riferimento completo alle API, consulta [ DurableConfig ](https://docs.aws.amazon.com/lambda/latest/api/API_DurableConfig.html) il Lambda API Reference.

## Best practice per la configurazione
<a name="durable-config-best-practices"></a>

Segui queste best practice per configurare funzioni durevoli per l'uso in produzione:
+ **Imposta i timeout di esecuzione appropriati**: configura `ExecutionTimeout` in base alla durata massima prevista del flusso di lavoro. Non impostate timeout inutilmente lunghi in quanto influiscono sui costi e sull'allocazione delle risorse.
+ **Equilibra la conservazione con i costi di archiviazione**: impostali `RetentionPeriodInDays` in base ai requisiti di debug e audit. Periodi di conservazione più lunghi aumentano i costi di storage.
+ **Dimensioni dello stato del monitor**: gli oggetti a stato di grandi dimensioni aumentano i costi di storage e possono influire sulle prestazioni. Mantieni lo stato minimo e utilizza l'archiviazione esterna per dati di grandi dimensioni.
+ **Configura la registrazione appropriata**: abilita la registrazione dettagliata per la risoluzione dei problemi dei flussi di lavoro a lunga durata, ma considera l'impatto sul volume e sui costi dei log.
+ **Crittografa con la tua AWS KMS chiave**: imposta una chiave gestita dal cliente `KMSKeyArn` per controllare la rotazione delle chiavi, verificare l'accesso e soddisfare i requisiti di conformità. Per informazioni, consulta [Crittografia AWS Lambda dati di esecuzione durevoli](durable-encryption.md).

**Esempio di configurazione di produzione: **

```
{
  "ExecutionTimeout": 86400,
  "RetentionPeriodInDays": 7,
  "KMSKeyArn": "arn:aws:kms:us-east-1:111122223333:key/key-id"
}
```

Questo esempio imposta un timeout di esecuzione di 24 ore (86.400 secondi), un periodo di conservazione di 7 giorni e una chiave gestita dal cliente per la crittografia.