Runtime di esecuzione delle istanze gestite Lambda - AWS Lambda

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

Runtime di esecuzione delle istanze gestite Lambda

Lambda elabora le richieste in modo diverso quando utilizza istanze gestite Lambda. Invece di gestire le richieste in sequenza in ogni ambiente di esecuzione, le istanze gestite Lambda elaborano più richieste contemporaneamente all'interno di ciascun ambiente di esecuzione. Questa modifica nel modello di esecuzione significa che le funzioni che utilizzano le istanze gestite Lambda devono considerare la sicurezza dei thread, la gestione dello stato e l'isolamento del contesto, problemi che non sorgono nel modello a concorrenza singola Lambda (predefinito). Inoltre, l'implementazione multi-concorrenza varia a seconda dei runtime.

Runtime supportati

I seguenti runtime supportano le istanze gestite Lambda:

  • Java: Java 21 e versioni successive.

  • Python: Python 3.13 e versioni successive.

  • Node.js: Node.js 22 e versioni successive.

  • .NET: .NET 8 e versioni successive.

Considerazioni specifiche sul runtime

Ogni runtime implementa la concorrenza multipla in modo diverso. È necessario comprendere come viene implementata la concorrenza multipla nel linguaggio di programmazione prescelto per applicare le migliori pratiche di concorrenza appropriate.

Java

Utilizza un unico processo con thread del sistema operativo per la concorrenza. Più thread eseguono il metodo handler contemporaneamente, richiedendo una gestione thread-safe delle risorse statali e condivise.

Python

Utilizza più processi Python in cui ogni richiesta simultanea viene eseguita in un processo separato. Ciò protegge dalla maggior parte dei problemi di concorrenza, sebbene sia necessaria attenzione per le risorse condivise come la directory. /tmp

Node.js

Utilizza thread di lavoro con esecuzione asincrona. Le richieste concorrenti sono distribuite tra i thread di lavoro e ogni thread di lavoro può anche gestire le richieste simultanee in modo asincrono, il che richiede una gestione sicura delle risorse statali e condivise.

.NET

Utilizza .NET Tasks con l'elaborazione asincrona di più richieste simultanee. Richiede una gestione sicura delle risorse statali e condivise.

Fasi successive

Per informazioni dettagliate su ogni runtime, consultate i seguenti argomenti: