AWS Serverless - Atualizações nos Padrões de Arquitetura e Melhores Práticas

À medida que navegamos além do ponto médio entre re:Invent 2018 e re:Invent 2019, eu gostaria de revisitar alguns dos recentes anúncios serverless que fizemos. Tudo isso é complementar aos padrões discutidos na sessão Padrões de Arquitetura Serverless e na seção Melhores Práticas da track architecture no re:Invent.

AWS Event Fork Pipelines

O AWS Event Fork Pipelines foi anunciado em março de 2019. Muitos clientes usam o processamento orientado a eventos assíncrono em seus aplicativos serverless, para desacoplar componentes de aplicativos e atender a necessidades de alta concorrência. E, ao fazer isso, muitas vezes, eles se encontram precisando fazer backup, pesquisar, analisar ou reproduzir esses eventos assíncronos. É exatamente isso que o AWS Event Fork Pipelines pretende alcançar. Você pode conectá-los a um novo tópico de SNS ou um existente usado pelo seu aplicativo e imediatamente cuidar das necessidades de retenção e conformidade, obter novos insights de negócios ou até mesmo melhorar as habilidades de recuperação de desastres do seu aplicativo.

O AWS Event Fork Pipelines é um conjunto de três aplicativos. O primeiro aplicativo aborda as necessidades de armazenamento e backup de eventos, gravando todos os eventos em um bucket do S3, onde eles podem ser consultados com serviços como o Amazon Athena. O segundo é um pipeline de pesquisa e análise que entrega eventos para um domínio novo ou existente do Amazon ES, permitindo a pesquisa e a análise de seus eventos. Finalmente, o terceiro aplicativo é um pipeline de repetição de evento que pode ser usado para reprocessar mensagens caso ocorra uma falha de recebimento de dados em seu aplicativo. Os AWS Event Fork Pipelines estão disponíveis nos modelos do AWS Serverless Application Model (SAM) e estão disponíveis no AWS Serverless Application Repository (SAR). Confira nosso exemplo de e-commerce no GitHub.

Portal do Desenvolvedor Amazon API Gateway Serverless

Se você publica APIs para desenvolvedores, permitindo que eles criem novos aplicativos e recursos com seus dados, você entenderá a necessidade de um portal do desenvolvedor. Além disso, em março de 2019, anunciamos algumas atualizações significativas no Portal do Desenvolvedor Amazon API Gateway Serverless. O front end do portal é escrito em React e foi projetado para ser totalmente personalizável .

O portal também está disponível no GitHub e no AWS SAR. Como você pode ver no diagrama de arquitetura abaixo, ele é integrado aos user pools do Amazon Cognito para permitir que os desenvolvedores se inscrevam, recebam uma chave de API e se registrem para uma ou mais de suas APIs. Agora você também pode ativar cenários administrativos no seu portal do desenvolvedor, fazendo login como usuários pertencentes ao grupo de administrador do portal, criado quando o portal é inicialmente implantado em sua conta. Por exemplo, você pode controlar quais APIs aparecem no portal do desenvolvedor de um cliente, ativar os downloads do SDK, solicitar feedback do desenvolvedor e até mesmo publicar as atualizações das APIs revisadas recentemente.

AWS Lambda com Amazon Application Load Balancer (ALB)

Microserviços em serverless estão sendo criados por nossos clientes por um bom tempo com o AWS Lambda e o Amazon API Gateway. No re:Invent 2018 durante a palestra do Dr. Werner Vogel, uma nova abordagem para microsserviços serverless foi anunciada, o Lambda funciona como alvos do ALB.

O suporte do ALB para Lambda oferece aos clientes a capacidade de implementar código serverless atrás de um ALB, ao lado de servidores, contêineres e endereços IP. Com esse recurso, caminhos ALB e o roteamento baseado em host podem ser usados ​​para direcionar solicitações recebidas para as funções do Lambda. Além disso, o ALB agora pode fornecer um ponto de entrada para que os aplicativos antigos assumam novas funcionalidades serverless e habilitem os cenários de migração do servidor legado monolítico ou aplicativos baseados em containers.

Os casos de uso para Lambdas em ALB incluem a adição de nova funcionalidade a um aplicativo existente que já está atrás de um ALB. Isso pode ser um monitoramento de solicitação enviando cabeçalhos http para clusters do Elasticsearch ou implementando controles que gerenciam cookies. Confira nossa demonstração deste novo recurso. Para detalhes adicionais, dê uma olhada na documentação.

Whitepaper: Visão Geral de Segurança do AWS Lambda

Por fim, seria negligente se eu não apontasse o excelente trabalho que muitos dos meus colegas fizeram ao lançar o whitepaper Visão Geral de Segurança do AWS Lambda. É uma leitura sucinta e esclarecedora para qualquer pessoa que queira entender melhor o ambiente de tempo de execução do Lambda, isolamento de função ou os caminhos obtidos pelos dados enviadas ao serviço do Lambda durante chamadas síncronas e assíncronas. Ele também tem uma ótima visão sobre conformidade, auditoria, monitoramento e gerenciamento de configuração de suas funções do Lambda. Uma leitura obrigatória para qualquer pessoa que deseje entender melhor a segurança geral dos aplicativos serverless da AWS.

Estou ansioso para ver todos na re:Invent 2019 para anúncios emocionantes na área serverless!

Créditos ⭐️

Written by

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store