Criar funções do Lambda com Go - AWS Lambda

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Criar funções do Lambda com Go

O Go é implementado de forma diferente de outros runtimes gerenciados. Como o Go é compilado nativamente com um binário executável, ele não requer um runtime de linguagem dedicado. Use um runtime somente de sistema operacional (a família de runtime provided) para implantar funções do Go no Lambda.

Suporte do runtime do Go

O runtime gerenciado do Go 1.x para Lambda foi descontinuado. Se tiver funções que usem o runtime do Go 1.x, você deverá migrar suas funções para provided.al2023 ou provided.al2. Os runtimes provided.al2023 e provided.al2 oferecem várias vantagens em comparação ao go1.x, incluindo compatibilidade com a arquitetura arm64 (processadores AWS Graviton2), binários menores e tempos de invocação um pouco mais rápidos.

Nenhuma alteração de código é necessária para essa migração. As únicas alterações necessárias estão relacionadas à forma como você cria seu pacote de implantação e ao runtime que você usa para criar sua função. Para obter mais informações, consulte Migrating AWS Lambda functions from the Go1.x runtime to the custom runtime on Amazon Linux 2 no AWS Compute Blog.

Somente SO
Nome Identificador Sistema operacional Data da substituição Bloquear a criação de funções Bloquear a atualização de funções

Runtime somente para sistema operacional

provided.al2023

Amazon Linux 2023

Runtime somente para sistema operacional

provided.al2

Amazon Linux 2

Ferramentas e bibliotecas

O Lambda fornece as seguintes ferramentas e bibliotecas para o runtime do Go:

Para obter mais informações, consulte aws-lambda-go no GitHub.

O Lambda fornece as seguintes aplicações de exemplo para o runtime do Go:

Aplicativos do Lambda de exemplo do em Go
  • go-al2: uma função olá, mundo que retorna o endereço IP público. Esta aplicação usa o runtime provided.al2 personalizado.

  • blank-go: uma função do Go que mostra o uso das bibliotecas do Go do Lambda, o registro em log, as variáveis de ambiente e o AWS SDK. Esta aplicação usa o runtime go1.x.