Tipos de aplicações e casos de uso comuns do Lambda - 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á.

Tipos de aplicações e casos de uso comuns do Lambda

Acionadores e funções do Lambda são os componentes principais ao criar aplicações no AWS Lambda. Uma função do Lambda é o código e tempo de execução que processam eventos, e um acionador é o serviço ou aplicação da AWS que invoca a função. Para ilustrar, considere os seguintes cenários:

  • Processamento de arquivos: suponha que você tenha um aplicação de compartilhamento de fotos. As pessoas usam o seu aplicação para fazer upload de fotos e o aplicação armazena essas fotos dos usuários no bucket do Amazon S3. Em seguida, o aplicativo cria uma versão em miniatura de cada foto e as exibe na página de perfil do usuário. Neste cenário, você pode optar por criar uma função do Lambda que cria uma miniatura automaticamente. O Amazon S3 é uma das fontes de eventos da AWS compatíveis que pode publicar eventos criados por objetos e invocar a função do Lambda. Seu código de função do Lambda pode ler o objeto da foto do bucket do S3, criar uma versão em miniatura e salvá-la em outro bucket do S3.

  • Dados e análise: suponha que você está criando um aplicação de análise e armazenando dados brutos em uma tabela do DynamoDB. Quando você gravar, atualizar ou excluir itens em uma tabela, os DynamoDB Streams poderão publicar eventos de atualização do item para um fluxo associado à tabela. Neste caso, os dados de eventos fornecem a chave de item, o nome do evento (como, inserir, atualizar e excluir) e outros detalhes relevantes. Você pode escrever uma função do Lambda para gerar métricas personalizadas, agregando dados brutos.

  • Sites: suponha que você esteja criando um site e deseja hospedar a lógica de backend no Lambda. Você pode invocar sua função do Lambda pelo HTTP usando o Amazon API Gateway como o endpoint HTTP. Agora, o cliente Web pode invocar a API e o API Gateway pode encaminhar a solicitação para o Lambda.

  • Aplicações móveis: suponha que você tem uma aplicação móvel personalizada que produz eventos. Você pode criar uma função do Lambda para processar eventos publicados pela sua aplicação personalizada. Por exemplo, você pode configurar uma função do Lambda para processar os cliques na aplicação móvel personalizada.

O AWS Lambda oferece suporte a muitos produtos da AWS, como fontes de eventos. Para ter mais informações, consulte Usar o AWS Lambda com outros serviços. Quando você configura essas fontes de eventos para acionar uma função do Lambda, essa função do Lambda é invocada automaticamente quando ocorrem eventos. Você define o mapeamento de fontes de eventos, que é a maneira como você identifica quais eventos são rastreados e qual função do Lambda é invocada.

Veja a seguir exemplos introdutórios de fontes de eventos e de como a end-to-end experiência funciona.

Exemplo 1: o Amazon S3 envia eventos por push e invoca uma função do Lambda

O Amazon S3 pode publicar eventos de diferentes tipos, como eventos de objeto PUT, POST, COPY e DELETE, em um bucket. Usando o recurso de notificação do bucket, você pode configurar um mapeamento de fonte de evento que direciona o Amazon S3 para invocar uma função do Lambda quando um tipo específico de evento ocorre.

Veja a seguir uma sequência usual:

  1. O usuário cria um objeto em um bucket.

  2. O Amazon S3 detecta o evento criado por objeto.

  3. O Amazon S3 invoca sua função do Lambda usando as permissões fornecidas pela função de execução.

  4. O AWS Lambda executa a função do Lambda especificando o evento como um parâmetro.

Você configura o Amazon S3 para invocar sua função como uma ação de notificação do bucket. Para conceder ao Amazon S3 permissão para invocar a função, atualize a política baseada em recursos da função.

Exemplo 2: o AWS Lambda extrai eventos de uma transmissão do Kinesis e invoca uma função do Lambda

Para fontes de eventos baseadas em sondagem, o AWS Lambda sonda a fonte e, em seguida, invoca a função do Lambda quando são detectados registros naquela fonte.

As etapas a seguir descrevem como um aplicação personalizada grava os registros em uma transmissão do Kinesis:

  1. A aplicação personalizada grava os registros em uma transmissão do Kinesis.

  2. O AWS Lambda sonda continuamente a transmissão e invoca a função do Lambda no momento em que o serviço detecta novos registros. O AWS Lambda sabe qual transmissão pesquisar e qual função do Lambda invocar com base no mapeamento de fontes de eventos criado no Lambda.

  3. A função do Lambda é invocada com o evento de entrada.

Ao trabalhar com fontes de eventos com base em fluxo, você cria mapeamentos da fonte do evento noAWS Lambda. O Lambda lê itens da transmissão e invoca a função de forma síncrona. Você não precisa conceder ao Lambda permissão para invocar a função, mas ele precisa de permissão para ler a transmissão.