Erstellen von Lambda-Funktionen mit Go - AWS Lambda

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 reine Betriebssystemlaufzeit (die provided-Laufzeit-Familie), um Go-Funktionen für Lambda bereitzustellen.

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 Laufzeiten provided.al2023 und provided.al2 bieten gegenüber go1.x mehrere Vorteile. Hierzu zählen unter anderem die Unterstützung der arm64-Architektur (AWS-Graviton2-Prozessoren) sowie 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 AWS Compute Blog unter Migrating AWS Lambda functions from the Go1.x runtime to the custom runtime on Amazon Linux 2.

Name ID Betriebssystem Datum der Veraltung Blockfunktion erstellen Blockfunktion aktualisieren

Reine OS-Laufzeit

provided.al2023

Amazon Linux 2023

30. Juni 2029

31. Juli 2029

31. August 2029

Reine OS-Laufzeit

provided.al2

Amazon Linux 2

30. Juni 2026

31. Juli 2026

31. August 2026

Tools und Bibliotheken

Lambda stellt die folgenden Tools und Bibliotheken für die Go-Laufzeit bereit:

Weitere Informationen finden Sie unter aws-lambda-go auf GitHub.

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, welche die Verwendung der Lambda-Go-Bibliotheken, Protokollierung, Umgebungsvariablen und des AWS SDK aufzeigt. Diese App verwendet die Laufzeit go1.x.