Aplicativo Web - Arquiteturas de vários níveis sem servidor da AWS com Amazon API Gateway e AWS Lambda

Este whitepaper é apenas para referência histórica. Alguns conteúdos podem estar desatualizados e alguns links podem não estar disponíveis.

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á.

Aplicativo Web

Nuvem AWS architecture diagram showing client interaction with various Serviços da AWS.

Padrão arquitetônico para aplicativo web

Tabela 3 - Componentes do aplicativo Web

Tier Componentes
Apresentação

O aplicativo front-end é todo conteúdo estático (HTML, CSS JavaScript e imagens) que é gerado por utilitários do React, como. create-react-app A Amazon CloudFront hospeda todos esses objetos. O aplicativo web, quando usado, baixa todos os recursos para o navegador e começa a ser executado a partir daí. O aplicativo web se conecta ao back-end chamando o. APIs

Logic (Lógica)

A camada lógica é criada usando funções Lambda lideradas pelo API Gateway REST. APIs

Essa arquitetura mostra vários serviços expostos. Há várias funções Lambda diferentes, cada uma tratando de um aspecto diferente do aplicativo. As funções do Lambda estão por trás do API Gateway e podem ser acessadas usando caminhos de URL da API.

A autenticação do usuário é feita usando grupos de usuários do Amazon Cognito ou provedores de usuários federados. O API Gateway usa integração imediata com o Amazon Cognito. Somente depois que um usuário for autenticado, o cliente receberá um token JSON Web Token (JWT) que deverá ser usado ao fazer as chamadas de API.

Cada função do Lambda recebe sua própria função do IAM para fornecer acesso à fonte de dados apropriada.

Dados

Neste exemplo específico, o DynamoDB é usado para o armazenamento de dados, mas outros serviços específicos de banco de dados ou armazenamento da Amazon podem ser usados dependendo do caso de uso e do cenário de uso.