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à.
Lambda supporta più lingue attraverso l'uso di runtime. Un runtime fornisce un ambiente specifico del linguaggio che inoltra gli eventi di chiamata, le informazioni di contesto e le risposte tra Lambda e la funzione. Puoi utilizzare i runtime forniti da Lambda o puoi crearne uno personalizzato.
Ogni versione del linguaggio di programmazione principale ha un runtime separato, con un identificatore di runtime univoco, ad esempio nodejs22.x
o python3.13
. Per configurare una funzione in modo da utilizzare una nuova versione principale del linguaggio, è necessario modificare l'identificatore di runtime. Poiché AWS Lambda non è possibile garantire la compatibilità con le versioni precedenti tra le versioni principali, si tratta di un'operazione gestita dal cliente.
Per una funzione definita come immagine di container, scegli un runtime e la distribuzione Linux quando crei l'immagine di container. Per modificare il runtime, è necessario creare una nuova immagine di container.
Quando si utilizza un archivio di file con estensione .zip per il pacchetto di implementazione, è necessario scegliere un runtime quando si crea la funzione. Per modificare il runtime, è possibile aggiornare la configurazione della funzione. Il runtime è associato a una delle distribuzioni Amazon Linux. L'ambiente di esecuzione sottostante fornisce ulteriori librerie e variabili di ambiente alle quali è possibile accedere dal codice della funzione.
Lambda richiama la funzione in un ambiente di esecuzione. Un ambiente di esecuzione fornisce un ambiente di runtime sicuro e isolato che gestisce le risorse necessarie per eseguire la funzione. Lambda riutilizza l'ambiente di esecuzione da una chiamata precedente, se disponibile, oppure può creare un nuovo ambiente di esecuzione.
Per utilizzare altri linguaggi in Lambda, come Go o Rust, utilizza un runtime solo per il sistema operativo. L'ambiente di esecuzione Lambda offre un'interfaccia di runtime per ricevere gli eventi di chiamata e inviare le risposte. Puoi implementare altri linguaggi implementando un runtime personalizzato insieme al codice della funzione o in un livello.
Runtime supportati
Nella tabella seguente sono elencati i runtime Lambda supportati e le date di ritiro previste. Una volta ritirato un runtime, è ancora possibile creare e aggiornare le funzioni per un periodo limitato. Per ulteriori informazioni, consulta Utilizzo del runtime dopo la deprecazione. La tabella fornisce le date attualmente previste per l'obsolescenza del runtime, in base alle nostre. Policy di deprecazione del runtime Tali date vengono indicate a scopo di pianificazione e sono soggette a modifiche.
Nome | Identificatore | Sistema operativo | Data di ritiro | Blocco creazione funzioni | Blocco aggiornamento funzioni |
---|---|---|---|---|---|
Node.js 22 |
|
Amazon Linux 2023 |
30 aprile 2027 |
1 giugno 2027 |
1 luglio 2027 |
Node.js 20 |
|
Amazon Linux 2023 |
30 aprile 2026 |
1 giugno 2026 |
1 luglio 2026 |
Node.js 18 |
|
Amazon Linux 2 |
1 settembre 2025 |
1 ottobre 2025 |
1 novembre 2025 |
Python 3.13 |
|
Amazon Linux 2023 |
30 giugno 2029 |
31 luglio 2029 |
31 agosto 2029 |
Python 3.12 |
|
Amazon Linux 2023 |
31 ottobre 2028 |
30 novembre 2028 |
10 gennaio 2029 |
Python 3.11 |
|
Amazon Linux 2 |
30 giugno 2026 |
31 luglio 2026 |
31 agosto 2026 |
Python 3.10 |
|
Amazon Linux 2 |
30 giugno 2026 |
31 luglio 2026 |
31 agosto 2026 |
Python 3.9 |
|
Amazon Linux 2 |
3 novembre 2025 |
8 dicembre 2025 |
8 gennaio 2026 |
Java 21 |
|
Amazon Linux 2023 |
30 giugno 2029 |
31 luglio 2029 |
31 agosto 2029 |
Java 17 |
|
Amazon Linux 2 |
30 giugno 2026 |
31 luglio 2026 |
31 agosto 2026 |
Java 11 |
|
Amazon Linux 2 |
30 giugno 2026 |
31 luglio 2026 |
31 agosto 2026 |
Java 8 |
|
Amazon Linux 2 |
30 giugno 2026 |
31 luglio 2026 |
31 agosto 2026 |
.NET 9 (solo contenitore) |
|
Amazon Linux 2023 |
Non programmato |
Non programmato |
Non programmato |
.NET 8 |
|
Amazon Linux 2023 |
10 novembre 2026 |
10 dicembre 2026 |
11 gennaio 2027 |
Ruby 3.3 |
|
Amazon Linux 2023 |
31 marzo 2027 |
30 aprile 2027 |
31 maggio 2027 |
Ruby 3.2 |
|
Amazon Linux 2 |
31 marzo 2026 |
30 aprile 2026 |
31 maggio 2026 |
Runtime solo per il sistema operativo |
|
Amazon Linux 2023 |
30 giugno 2029 |
31 luglio 2029 |
31 agosto 2029 |
Runtime solo per il sistema operativo |
|
Amazon Linux 2 |
30 giugno 2026 |
31 luglio 2026 |
31 agosto 2026 |
Nota
Per le nuove regioni, Lambda non supporterà i runtime per cui è previsto il ritiro entro i prossimi 6 mesi.
Lambda mantiene aggiornati i runtime gestiti e le immagini di base dei container corrispondenti con patch e supporto per le versioni minori. Per ulteriori informazioni, consulta Aggiornamenti di runtime Lambda.
Per interagire a livello di codice con altre Servizi AWS risorse della funzione Lambda, puoi usare una delle. AWS SDKs I runtime Node.js, Python e Ruby includono una versione dell'SDK. AWS Tuttavia, per mantenere il pieno controllo delle dipendenze e massimizzare la compatibilità con le versioni precedenti durante gli aggiornamenti automatici del runtime, ti consigliamo di includere sempre i moduli SDK utilizzati dal codice (insieme a qualsiasi dipendenza) nel pacchetto di distribuzione della funzione o in un livello Lambda.
Ti consigliamo di utilizzare la versione SDK inclusa nel runtime solo quando non puoi includere pacchetti aggiuntivi nella distribuzione. Ad esempio, quando crei la tua funzione utilizzando l'editor di codice della console Lambda o utilizzando il codice di funzione in linea in un modello. AWS CloudFormation
Lambda aggiorna periodicamente le versioni AWS SDKs incluse nei runtime Node.js, Python e Ruby. Per determinare la versione dell' AWS SDK inclusa nel runtime che stai utilizzando, consulta le seguenti sezioni:
Lambda continua a supportare il linguaggio di programmazione Go dopo il ritiro del runtime Go 1.x. Per ulteriori informazioni, consulta la sezione Migrazione AWS Lambda delle funzioni dal runtime Go1.x al runtime personalizzato su Amazon Linux 2
Tutti i runtime Lambda supportati supportano sia le architetture x86_64 che le architetture arm64.
Nuovi rilasci di runtime
Lambda fornisce runtime gestiti per le nuove versioni di linguaggio solo quando il rilascio raggiunge la fase di supporto a lungo termine (LTS) del ciclo di rilascio del linguaggio. Ad esempio, per il ciclo di rilascio di Node.js
Prima che raggiunga la fase di supporto a lungo termine, il rilascio rimane in fase di sviluppo e può ancora essere soggetto a modifiche sostanziali. Lambda applica in automatico gli aggiornamenti di runtime per impostazione predefinita, quindi le modifiche sostanziali a una versione di runtime potrebbe impedire alle funzioni di funzionare come previsto.
Lambda non fornisce runtime gestiti per le versioni di linguaggio che non sono pianificate per il rilascio LTS.
L'elenco seguente mostra il mese di lancio previsto per i runtime Lambda futuri. Queste date sono solo indicative e soggette a modifica.
-
Ruby 3.4: marzo 2025
-
Java 25: ottobre 2025
-
Python 3.14: novembre 2025
-
Node.js 24: novembre 2025
-
.NET 10: dicembre 2025
Policy di deprecazione del runtime
I runtime Lambda per gli archivi di file.zip si basano su una combinazione di sistema operativo, linguaggio di programmazione e librerie software soggette a manutenzione e aggiornamenti di sicurezza. In base alla policy di deprecazione standard di Lambda, un runtime diventa obsoleto quando uno dei suoi componenti principali raggiunge la fine del supporto a lungo termine (LTS) della community e gli aggiornamenti di sicurezza non sono più disponibili. In genere si tratta del runtime del linguaggio, anche se in alcuni casi un runtime può diventare obsoleto perché il sistema operativo (OS) raggiunge la fine dell'LTS.
Dopo che un runtime è diventato obsoleto, non AWS possono più applicare patch o aggiornamenti di sicurezza a quel runtime e le funzioni che utilizzano quel runtime non sono più idonee per il supporto tecnico. Tali runtime obsoleti vengono forniti "così come sono", senza alcuna garanzia e possono contenere bug, errori, difetti o altre vulnerabilità.
Importante
Occasionalmente, Lambda ritarda la deprecazione di un runtime Lambda per un periodo limitato oltre la data di fine del supporto della versione di linguaggio supportata dal runtime. Durante questo periodo, Lambda applica le patch di sicurezza soltanto al sistema operativo runtime. Una volta raggiunta la data di fine del supporto, Lambda non applica le patch di sicurezza ai runtime dei linguaggi di programmazione.
Modello di responsabilità condivisa
Lambda è responsabile della cura e della pubblicazione degli aggiornamenti di sicurezza per tutti i runtime gestiti e le immagini dei container supportati. Per impostazione predefinita, Lambda applica automaticamente questi aggiornamenti alle funzioni che utilizzano runtime gestiti. Se l'impostazione predefinita per l'aggiornamento automatico del runtime è stata modificata, consulta il modello di responsabilità condivisa dei controlli di gestione del runtime. Per le funzioni implementate utilizzando immagini di container, l'utente sarà responsabile della ricostruzione dell'immagine di container della funzione dall'immagine di base più recente e della nuova implementazione dell'immagine di container.
Quando un runtime diventa obsoleto, la responsabilità di Lambda per l'aggiornamento del runtime gestito e delle immagini di base del container cessa. L'utente è responsabile dell'aggiornamento delle funzioni per utilizzare un runtime o un'immagine di base supportata.
In tutti i casi, l'utente è responsabile dell'applicazione degli aggiornamenti al codice della funzione, comprese le sue dipendenze. Le tue responsabilità nell'ambito del modello di responsabilità condivisa sono riassunte nella tabella seguente.
Fase del ciclo di vita di runtime | Responsabilità di Lambda | Le tue responsabilità |
---|---|---|
Runtime gestito supportato |
Fornisci aggiornamenti di runtime regolari con patch di sicurezza e altri aggiornamenti. Applica automaticamente gli aggiornamenti di runtime per impostazione predefinita (vedi Modalità di aggiornamento del runtime per i comportamenti non predefiniti). |
Aggiorna il codice della funzione, comprese le dipendenze, per risolvere eventuali vulnerabilità di sicurezza. |
Immagine di container supportata | Fornisci aggiornamenti di runtime regolari all'immagine di base del container con patch di sicurezza e altri aggiornamenti. |
Aggiorna il codice della funzione, comprese le dipendenze, per risolvere eventuali vulnerabilità di sicurezza. Ricostruisci e reimplementa regolarmente l'immagine di container utilizzando l'immagine di base più recente. |
Runtime gestito prossimo alla deprecazione |
Avvisate i clienti prima della deprecazione del runtime tramite documentazione, e-mail e. AWS Health Dashboard Trusted Advisor La responsabilità per gli aggiornamenti del runtime termina quando il runtime diventa obsoleto. |
Monitora la documentazione di Lambda AWS Health Dashboard, la posta elettronica o le informazioni sull'obsolescenza in fase Trusted Advisor di esecuzione. Aggiorna le funzioni a un runtime supportato prima che il runtime precedente diventi obsoleto. |
Immagine di container che si avvicina alla deprecazione |
Le notifiche di deprecazione non sono disponibili per le funzioni che utilizzano immagini di container. La responsabilità per gli aggiornamenti dell'immagine di base del container termina quando il runtime diventa obsoleto. |
Fai attenzione alle pianificazioni di deprecazione e alle funzioni di aggiornamento a un'immagine di base supportata prima che l'immagine precedente diventi obsoleta. |
Utilizzo del runtime dopo la deprecazione
Dopo che un runtime è diventato obsoleto, non AWS possono più applicare patch di sicurezza o aggiornamenti a quel runtime e le funzioni che utilizzano quel runtime non sono più idonee al supporto tecnico. Tali runtime obsoleti vengono forniti "così come sono", senza alcuna garanzia e possono contenere bug, errori, difetti o altre vulnerabilità. Le funzioni che utilizzano un runtime obsoleto possono inoltre presentare un peggioramento delle prestazioni o altri problemi, come la scadenza del certificato, che possono impedirne il corretto funzionamento.
Per almeno 30 giorni dopo il ritiro di un runtime, puoi ancora creare nuove funzioni Lambda utilizzando quel runtime. A partire da 30 giorni dopo il ritiro, Lambda comincia a bloccare la creazione di nuove funzioni.
Per almeno 60 giorni dopo il ritiro di un runtime, potrai ancora aggiornare il codice della funzione e la configurazione per le funzioni esistenti. A partire da 60 giorni dopo la deprecazione, Lambda comincia a bloccare l'aggiornamento del codice della funzione e la configurazione per le funzioni esistenti.
Nota
Per alcuni runtime, AWS posticipa block-function-update le date di fine oltre i normali 30 block-function-create e 60 giorni dopo l'obsolescenza. AWS ha apportato questa modifica in risposta al feedback dei clienti per darti più tempo per aggiornare le tue funzioni. Fai riferimento alle tabelle riportate in Runtime supportati e Runtime obsoleti per vedere le date dei runtime.
Puoi aggiornare una funzione in modo che utilizzi una versione di runtime supportata più recente a tempo indeterminato dopo il ritiro di un runtime. È necessario verificare che la funzione funzioni con il nuovo runtime prima di applicare la modifica del runtime negli ambienti di produzione, poiché non sarà possibile ripristinare il runtime obsoleto una volta trascorso il periodo di 60 giorni. Consigliamo di utilizzare le versioni e gli alias delle funzioni per consentire una implementazione sicura con rollback.
Tieni presente che il periodo di tempo esatto per cui potrai continuare a creare e aggiornare le funzioni non è fisso. Questo periodo può variare per ogni deprecazione e per diversa. Regioni AWS Le date nominali per il blocco della creazione e degli aggiornamenti delle funzioni sono indicate nella tabella Runtime supportati nella prima sezione di questa pagina. Lambda non comincerà a bloccare la creazione o gli aggiornamenti delle funzioni prima delle date riportate nella tabella.
Puoi continuare a richiamare le funzioni all'infinito dopo che il runtime è stato ritirato. Tuttavia, si consiglia AWS vivamente di migrare le funzioni a un runtime supportato in modo che le funzioni continuino a ricevere patch di sicurezza e rimangano idonee al supporto tecnico.
Ricezione di notifiche di ritiro del runtime
Quando un runtime si avvicina alla data di deprecazione, Lambda invia un avviso e-mail se alcune funzioni del runtime utilizzano quel runtime. Account AWS Le notifiche vengono visualizzate anche in e in. AWS Health Dashboard AWS Trusted Advisor
-
Ricezione di notifiche e-mail:
Lambda ti invia un avviso e-mail almeno 180 giorni prima che un runtime venga ritirato. Questa e-mail elenca le versioni $LATEST di tutte le funzioni che utilizzano il runtime. Per visualizzare un elenco completo delle versioni delle funzioni interessate, usa Trusted Advisor o seeRecuperare dati sulle funzioni Lambda che utilizzano un runtime obsoleto.
Lambda invia una notifica via e-mail al contatto principale Account AWS del tuo account. Per informazioni sulla visualizzazione o l'aggiornamento degli indirizzi e-mail nel tuo account, consulta la pagina Aggiornamento delle informazioni di contatto della Guida generale di AWS .
-
Ricezione di notifiche tramite: AWS Health Dashboard
AWS Health Dashboard Visualizza una notifica almeno 180 giorni prima che un runtime diventi obsoleto. Le notifiche compaiono nella pagina Stato del tuo account, in Altre notifiche
. La scheda Risorse interessate della notifica elenca le versioni $LATEST di tutte le funzioni che utilizzano il runtime. Nota
Per visualizzare un up-to-date elenco completo delle versioni delle funzioni interessate, usa Trusted Advisor or see. Recuperare dati sulle funzioni Lambda che utilizzano un runtime obsoleto
AWS Health Dashboard le notifiche scadono 90 giorni dopo che il runtime interessato è diventato obsoleto.
-
Usando AWS Trusted Advisor
Trusted Advisor visualizza una notifica almeno 180 giorni prima che un runtime diventi obsoleto. Le notifiche compaiono nella pagina Sicurezza
. Un elenco delle funzioni interessate viene visualizzato in Funzioni AWS Lambda che utilizzano runtime ritirati. Questo elenco di funzioni mostra sia le versioni $LATEST sia le versioni pubblicate e si aggiorna in automatico per riflettere lo stato attuale delle funzioni. Puoi attivare le notifiche e-mail settimanali dalla Trusted Advisor pagina Preferenze
della console. Trusted Advisor
Runtime obsoleti
Per i seguenti runtime è stata raggiunta la fine del supporto:
Nome | Identificatore | Sistema operativo | Data di ritiro | Blocco creazione funzioni | Blocco aggiornamento funzioni |
---|---|---|---|---|---|
.NET 6 |
dotnet6
|
Amazon Linux 2 |
20 dicembre 2024 |
1 ottobre 2025 |
1 novembre 2025 |
Python 3.8 |
python3.8
|
Amazon Linux 2 |
14 ottobre 2024 |
1 ottobre 2025 |
1 novembre 2025 |
Node.js 16 |
nodejs16.x
|
Amazon Linux 2 |
12 giugno 2024 |
1 ottobre 2025 |
1 novembre 2025 |
.NET 7 (solo container) |
dotnet7
|
Amazon Linux 2 |
14 maggio 2024 |
N/D |
N/D |
Java 8 |
java8
|
Amazon Linux |
8 gennaio 2024 |
8 febbraio 2024 |
1 novembre 2025 |
Go 1.x |
go1.x
|
Amazon Linux |
8 gennaio 2024 |
8 febbraio 2024 |
1 novembre 2025 |
Runtime solo per il sistema operativo |
provided
|
Amazon Linux |
8 gennaio 2024 |
8 febbraio 2024 |
1 novembre 2025 |
Ruby 2.7 |
ruby2.7
|
Amazon Linux 2 |
7 dicembre 2023 |
9 gennaio 2024 |
1 novembre 2025 |
Node.js 14 |
nodejs14.x
|
Amazon Linux 2 |
4 dicembre 2023 |
9 gennaio 2024 |
1 novembre 2025 |
Python 3.7 |
python3.7
|
Amazon Linux |
4 dicembre 2023 |
9 gennaio 2024 |
1 novembre 2025 |
.NET Core 3.1 |
dotnetcore3.1
|
Amazon Linux 2 |
3 aprile 2023 |
3 aprile 2023 |
3 maggio 2023 |
Node.js 12 |
nodejs12.x
|
Amazon Linux 2 |
31 marzo 2023 |
31 marzo 2023 |
30 aprile 2023 |
Python 3.6 |
python3.6
|
Amazon Linux |
18 luglio 2022 |
18 luglio 2022 |
29 agosto 2022 |
.NET 5 (solo container) |
dotnet5.0
|
Amazon Linux 2 |
10 maggio 2022 |
N/D |
N/D |
.NET Core 2.1 |
dotnetcore2.1
|
Amazon Linux |
5 gennaio 2022 |
5 gennaio 2022 |
13 aprile 2022 |
Node.js 10 |
nodejs10.x
|
Amazon Linux 2 |
30 luglio 2021 |
30 luglio 2021 |
14 febbraio 2022 |
Ruby 2.5 |
ruby2.5
|
Amazon Linux |
30 luglio 2021 |
30 luglio 2021 |
31 marzo 2022 |
Python 2.7 |
python2.7
|
Amazon Linux |
15 luglio 2021 |
15 luglio 2021 |
30 maggio 2022 |
Node.js 8.10 |
nodejs8.10
|
Amazon Linux |
6 marzo 2020 |
4 febbraio 2020 |
6 marzo 2020 |
Node.js 4.3 |
nodejs4.3
|
Amazon Linux |
5 marzo 2020 |
3 febbraio 2020 |
5 marzo 2020 |
Node.js 4.3 edge |
nodejs4.3-edge
|
Amazon Linux |
5 marzo 2020 |
31 marzo 2019 |
30 aprile 2019 |
Node.js 6.10 |
nodejs6.10
|
Amazon Linux |
12 agosto 2019 |
12 luglio 2019 |
12 agosto 2019 |
.NET Core 1.0 |
dotnetcore1.0
|
Amazon Linux |
27 giugno 2019 |
30 giugno 2019 |
30 luglio 2019 |
.NET Core 2.0 |
dotnetcore2.0
|
Amazon Linux |
30 maggio 2019 |
30 aprile 2019 |
30 maggio 2019 |
Node.js 0.10 |
nodejs
|
Amazon Linux |
30 agosto 2016 |
30 settembre 2016 |
31 ottobre 2016 |
Nella quasi totalità dei casi, la end-of-life data della versione linguistica o del sistema operativo è nota con largo anticipo. I seguenti collegamenti forniscono le end-of-life pianificazioni per ogni lingua supportata da Lambda come runtime gestito.
Policy di supporto su linguaggio e framework
-
Node.js – github.com
-
Python – devguide.python.org
-
Ruby – www.ruby-lang.org
-
Java — www.oracle.com
e Corretto FAQs -
Go – golang.org
-
.NET – dotnet.microsoft.com