Amazon Web Services: Tudo que Você Deve Saber - Parte 10 (Arquitetura Lambda/Serverless)

Amazon Web Services: Tudo que Você Deve Saber


Serverless Computing


Serverless Computing é uma arquitetura tecnológica que permite abstrair as questões físicas ao desenhar e implementar aplicações, de forma que não é necessário se preocupar "tanto" com questões como a quantidade de memória, cpu e armazenamento necessários. Para saber mais a respeito, vale a pena consultar este ótimo guia.
Vamos descrever, na parte final deste tutorial sobre a Amazon Web Services, um serviço que oferece a possibilidade de adotar esta nova arquitetura para o desenvolvimento dos seus projetos. Este serviço se chama Lambda.
AWS Lambda


  • 📒 Página InicialGuia de DesenvolvimentoFAQPreços
  • Lambda é um serviço relativamente novo (lançado no final de 2014) que oferece um tipo diferente de abstração de computação: uma função definida pelo usuário que pode executar uma pequena operação, onde a AWS gerencia provisionamento e agendamento de como é executado.

Dicas de Lambda


  • O que significa serverless (sem servidor)? Essa idéia de usar Lambda para a lógica da aplicação cresceu para ser chamada sem servidor, pois você não gerencia explicitamente qualquer instância do servidor, como faria com o EC2. Este termo é um pouco confuso, uma vez que as próprias funções trabalham, naturalmente, em servidores gerenciados pela AWS. A Serverless, Inc. também usa essa palavra para o nome de sua empresa e seu próprio framework de código aberto, mas o termo geralmente é usado de forma mais geral. O lançamento de Lambda e do API Gateway em 2015 desencadeou uma adoção surpreendentemente rápida em 2016, com muitas pessoas escrevendo sobre arquiteturas sem servidor em que muitas aplicações tradicionalmente resolvidas pelo gerenciamento de servidores EC2 podem ser criadas sem gerenciar explicitamente servidores.
  • Frameworks: Muitos frameworks para criar e gerenciar implantação sem servidor estão surgindo.
  • A Estrutura sem servidor é uma nova abordagem dirigida para ajudar a agrupar e gerenciar funções Lambda. Está se aproximando da versão 1 a partir de agosto de 2016 e é popular entre um pequeno número de usuários.


Alternativas Lambda e Lock-in


Problemas e Limitações do Lambda


  • Lambda é uma nova tecnologia. Desde 2016, apenas algumas empresas estão usando isso para aplicações de produção em larga escala.
  • Gerenciando muitas funções da Lambda é um desafio de fluxo de trabalho, e as ferramentas para gerenciar implantações de Lambda ainda são imaturas.
  • Atualmente, desde outubro de 2016, a Lambda às vezes pode parar de funcionar por 2-3 minutos para as alertas de recuperação de falhas, de acordo com uma resposta do suporte da equipe de desenvolvimento da Lambda. A Amazon está trabalhando para evitar isso no futuro.
  • Lambda tem vários limites de recursos até 2017-06:
    • Um tamanho de carga de solicitação ou resposta de 6MB.
    • Um limite de 50 MB no tamanho de pacote de implantação de arquivo .zip / .jar compactado.
    • Um limite de 250 MB no código / dependências no pacote antes da compressão.

Amostras de Código Lambda

  • Fan-out é um exemplo de usar Lambda para copiar dados de um serviço, neste caso Kinesis, para vários outros serviços de dados AWS. Os destinos para dados de fan-out na amostra incluem IoT, SQS e muito mais.
  • Este monitor de limite AWS usando Lambdas mostra o uso de vários Lambdas para monitoramento.
  • Este Lambda ECS Worker Pattern mostra o uso de Lambda em um fluxo de trabalho onde os dados de S3 são retirados pela Lambda, empurrados para uma fila, depois enviados para a ECS para mais processamento.
  • O Secure Pet Store é uma aplicação Java de exemplo que usa Lambda e API Gateway com o Cognito (para a identidade do usuário).

Christian Guerreiro

Professor por vocação, blogueiro e servidor público por opção, amante da tecnologia e viciado em informação.


Ensino a distância em Tecnologia da Informação: Virtualização com VMware, Big Data com Hadoop, Certificação ITIL 2011 Foundations e muito mais.


Suporte o Tecnologia que Interessa!

Você acha que as informações compartilhadas aqui são úteis?
Então me ajude a produzir ainda mais e melhores conteúdos!


É muito fácil. Basta divulgar nossos treinamentos pra alguém que conheça!


E se for de Salvador, podemos estruturar um curso presencial para sua empresa!

Eu vou ficar muito grato (e quem fizer os curso também :)!