Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Erstellen von Lambda-Funktionen mit Go
Go wird anders implementiert als andere verwaltete Laufzeiten. Da Go nativ zu einer ausführbaren Binärdatei kompiliert wird, ist keine spezielle Sprachlaufzeit erforderlich. Verwenden Sie eine OS-only Runtime (die provided Runtime-Familie), um Go-Funktionen auf Lambda bereitzustellen.
Hinweise zur Verwendung von Ebenen mit Go finden Sie unterArbeiten mit Ebenen für Go Lambda-Funktionen.
Themen
Unterstützte Go-Laufzeiten
Die verwaltete Laufzeit Go 1.x für Lambda ist veraltet. Wenn Sie Funktionen haben, die die Go 1.x-Laufzeit verwenden, müssen Sie Ihre Funktionen nach provided.al2023 oder provided.al2 migrieren. Die provided.al2 Laufzeiten provided.al2023 und bieten mehrere Vorteile gegenübergo1.x, darunter Unterstützung für die Arm64-Architektur (AWS Graviton2-Prozessoren), kleinere Binärdateien und etwas schnellere Aufrufzeiten.
Für diese Migration sind keine Codeänderungen erforderlich. Die einzigen erforderlichen Änderungen betreffen die Erstellung Ihres Bereitstellungspakets sowie die Laufzeit, die Sie zur Erstellung Ihrer Funktion verwenden. Weitere Informationen finden Sie im Compute-Blog unter Migration von AWS Lambda Funktionen von der Go1.x Runtime zur Custom Runtime auf Amazon Linux 2.
| Name | ID | Betriebssystem | Datum der Veraltung | Blockfunktion erstellen | Blockfunktion aktualisieren |
|---|---|---|---|---|---|
|
OS-only Laufzeit |
|
Amazon Linux 2023 |
30. Juni 2029 |
31. Juli 2029 |
31. August 2029 |
Tools und Bibliotheken
Lambda stellt die folgenden Tools und Bibliotheken für die Go-Laufzeit bereit:
-
AWS SDK für Go v2
: Das offizielle AWS SDK für die Go-Programmiersprache. -
Github. com/aws/aws-lambda- go/lambda
: Die Implementierung des Lambda-Programmiermodells für Go. Dieses Paket wird von verwendet, um Ihren Handler aufzurufen. AWS Lambda Definieren des Lambda-Funktions-Handlers in Go -
Github. com/aws/aws-lambda- go/lambdacontext
: Hilfsprogramme für den Zugriff auf Kontextinformationen aus dem Kontextobjekt. Verwenden des Lambda-Kontextobjekts zum Abrufen von Go-Funktionsinformationen -
Github. com/aws/aws-lambda- go/events
: Diese Bibliothek bietet Typdefinitionen für gängige Integrationen von Eventquellen. -
Github. com/aws/aws-lambda- go/cmd /build-lambda-zip
: Dieses Tool kann verwendet werden, um ein ZIP-Dateiarchiv unter Windows zu erstellen.
Weitere Informationen finden Sie unter aws-lambda-go on. https://github.com/aws/aws-lambda-go
Lambda stellt die folgenden Beispielanwendungen für die Go-Laufzeit bereit:
Lambda-Beispielanwendungen in Go
-
go-al2
: Eine Hello World-Funktion, die die öffentliche IP-Adresse zurückgibt. Diese App verwendet die benutzerdefinierte Laufzeit provided.al2. -
blank-go
— Eine Go-Funktion, die die Verwendung der Go-Bibliotheken, der Protokollierung, der Umgebungsvariablen und des SDK von Lambda zeigt. AWS Diese App verwendet die Laufzeit go1.x.