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à.
Compilazione di funzioni Lambda con Go
Go è implementato in modo diverso rispetto ad altri runtime gestiti. Poiché Go viene compilato nativamente in un file binario eseguibile, non richiede un runtime linguistico dedicato. Usa un OS-only runtime (la famiglia provided di runtime) per distribuire le funzioni Go su Lambda.
Per informazioni sull'uso dei livelli con Go, consulta. Utilizzo dei livelli per le funzioni Lambda in Go
Argomenti
Supporto per il runtime Go
Il runtime gestito Go 1.x per Lambda è obsoleto. Se hai funzioni che utilizzano il runtime Go 1.x, devi eseguire la migrazione delle tue funzioni a provided.al2023 o provided.al2. I provided.al2 runtime provided.al2023 e offrono diversi vantaggi rispettogo1.x, tra cui il supporto per l'architettura arm64 (processori AWS Graviton2), file binari più piccoli e tempi di richiamo leggermente più rapidi.
Per questa migrazione, non sono necessarie modifiche al codice. Le uniche modifiche richieste riguardano la modalità di creazione del pacchetto di implementazione e il runtime utilizzato per creare la funzione. Per ulteriori informazioni, consulta Migrazione AWS Lambda delle funzioni dal Go1.x runtime al runtime personalizzato su Amazon Linux 2 nel blog di Compute.
| Nome | Identificatore | Sistema operativo | Data di ritiro | Blocco creazione funzioni | Blocco aggiornamento funzioni |
|---|---|---|---|---|---|
|
OS-only Runtime |
|
Amazon Linux 2023 |
30 giugno 2029 |
31 luglio 2029 |
31 agosto 2029 |
Strumenti e librerie
Lambda fornisce i seguenti strumenti e librerie per il runtime Go:
-
AWS SDK per Go v2
: L' AWS SDK ufficiale per il linguaggio di programmazione Go. -
github. com/aws/aws-lambda- go/lambda
: L'implementazione del modello di programmazione Lambda per Go. Questo pacchetto viene utilizzato da per richiamare il gestore. AWS Lambda Definisci i gestori di funzioni Lambda in Go -
github. com/aws/aws-lambda- go/lambdacontext
: aiutanti per accedere alle informazioni di contesto dall'oggetto di contesto. Utilizzo dell'oggetto contestuale Lambda per recuperare le informazioni sulla funzione Go -
github. com/aws/aws-lambda- go/events
: questa libreria fornisce definizioni di tipo per le integrazioni di sorgenti di eventi comuni. -
github. com/aws/aws-lambda- go/cmd /build-lambda-zip
: questo strumento può essere utilizzato per creare un archivio di file .zip su Windows.
Per ulteriori informazioni, consulta aws-lambda-go on. https://github.com/aws/aws-lambda-go
Lambda fornisce le seguenti applicazioni di esempio per il runtime di Go:
Applicazioni Lambda di esempio in Go
-
go-al2
: una funzione hello world che restituisce l'indirizzo IP pubblico. Questa app utilizza il runtime personalizzato provided.al2. -
blank-go
— Una funzione Go che mostra l'uso delle librerie Go di Lambda, della registrazione, delle variabili di ambiente e dell'SDK. AWS Questa app utilizza il runtime go1.x.