YoVDO

Troubleshooting Serverless Applications (Portuguese)

Offered By: Amazon Web Services via AWS Skill Builder

Tags

AWS Step Functions Courses Event-Driven Architecture Courses AWS X-Ray Courses Amazon CloudWatch Courses

Course Description

Overview

Save Big on Coursera Plus. 7,000+ courses at $160 off. Limited Time Only!

Visão geral do laboratório

Visão geral

Uma API é um conjunto de componentes vinculados entre si para criar um aplicativo. Isso permite fácil escalabilidade, gerenciamento operacional e gerenciamento de código de partes individuais do aplicativo. Criar APIs em um ambiente sem servidor permite que você projete componentes otimizados para funcionar em escala. Isso também permite que você pague apenas pelos serviços que usa. Essa é uma grande vantagem, porém, pode ser difícil solucionar problemas de componentes desacoplados em um ambiente de nuvem e corrigir algo que dê errado. A AWS oferece várias ferramentas que ajudam você a identificar os problemas facilmente.

Objetivos

Depois de concluir este laboratório, você será capaz de:

  • Entender uma arquitetura orientada por eventos
  • Habilitar e usar o AWS X-Ray e o Amazon CloudWatch
  • Entender como o AWS Step Functions pode ser configurado para orquestrar aplicativos sem servidor
  • Aproveitar o Amazon Simple Queue Service (Amazon SQS) e as filas de mensagens mortas
  • Entender como solucionar problemas de arquiteturas sem servidor
  • Fazer atualizações de configuração para restaurar a funcionalidade da API

Pré-requisitos

Este laboratório requer:

  • Acesso a um computador com wi-fi e Microsoft Windows, macOS X ou Linux (Ubuntu, SuSE ou Red Hat).
  • O ambiente de laboratório não é acessível em iPad ou tablet, mas você pode usar esses dispositivos para acessar o guia do aluno.
  • Para usuários do Microsoft Windows: acesso de administrador ao computador
  • Um navegador da Internet, como Chrome, Firefox ou Internet Explorer 9 (versões anteriores do Internet Explorer não são compatíveis)

Duração

Este laboratório requer 90 minutos.

Cenário

Este laboratório é construído em torno de um aplicativo de impressão de álbum fotográfico. Com ele, os clientes fazem upload de uma coleção de imagens que desejam imprimir em um livro físico. Cada imagem é processada para garantir que ela seja exibida corretamente no livro. O aplicativo usa o AWS Step Functions para gerenciar o fluxo de trabalho. O fluxo de trabalho usa funções do AWS Lambda para garantir que cada imagem seja o tipo de arquivo adequado e usa o Amazon Rekognition para garantir que o conteúdo seja apropriado. O fluxo de trabalho também redimensiona as imagens, adiciona marcas d'água e gera uma amostra em PDF para o cliente aprovar. Em seguida, o Amazon Simple Notification Service (Amazon SNS) envia um e-mail ao cliente para aprovação antes de enviar o trabalho para o Amazon Simple Queue Service (Amazon SQS). O Amazon SQS envia o álbum para o serviço de impressão externo para ser impresso e enviado ao cliente.

Infelizmente, o aplicativo foi corrompido por um push de código recente, e os clientes estão recebendo vários erros ao tentarem fornecer imagens de seus álbuns. Você solucionará todos os problemas e corrigirá o aplicativo.

Ambiente de laboratório

O ambiente usa o Amazon API Gateway, funções do Lambda, fluxos de trabalho do Step Functions, buckets do Amazon Simple Storage Service (Amazon S3), tabelas do Amazon DynamoDB e filas do Amazon SQS. Vários erros foram introduzidos no ambiente, e você precisa aplicar a solução de problemas e resolvê-los.

O API Gateway está hospedando várias APIs na frente de várias funções do Lambda. O DynamoDB é usado para armazenar metadados sobre as imagens de que um usuário faz upload. Um fluxo de trabalho do Step Functions é iniciado para validar as imagens e renderizá-las para impressão antes de enviar um link (pelo Amazon SNS) ao usuário para verificação. Neste laboratório, esse processo é automatizado. Um usuário pode visualizar um PDF do álbum antes de enviá-lo a terceiros para impressão e envio.

A imagem a seguir é um diagrama de arquitetura de alto nível do ambiente:


Clique aqui para baixar uma versão em alta resolução do diagrama de arquitetura.

A imagem a seguir é um diagrama detalhado da máquina de estado de processamento de imagem. Use-a para realizar a solução de problemas do aplicativo:


Clique aqui para baixar uma versão em alta resolução da máquina de estado de processamento da imagem.

O diagrama da máquina de estado de processamento de imagem indica:

#0: /batch: essa API do API Gateway é usada para teste. Ela aciona uma função Lambda que automatiza o processo de upload do usuário contido na caixa laranja.

#1: /addAlbum: o usuário envia uma solicitação para os pre-signed URLs fazerem upload das imagens. O usuário usa os pre-signed URLs para fazer upload das imagens diretamente para o Amazon S3.

#2: /createBookBinding: o usuário invoca o processo de criação do álbum indicando que concluiu o upload das imagens.

#3: /invocation: o PDF é aprovado por proxy, usando o Lambda para teste.

Observação Para facilitar os testes, uma função Lambda foi criada para gerar automaticamente álbuns aleatórios. Isso vai acelerar o processo de teste gerando vários álbuns com várias imagens cada, de modo que você possa identificar melhor problemas no aplicativo.

A imagem a seguir é um diagrama detalhado da máquina de estado de impressão de álbum:


Clique aqui para baixar uma versão em alta resolução da máquina de estado de impressão de álbum.


Tags

Related Courses

Configuring and Monitoring Governance of AWS Deployments
A Cloud Guru
Amazon DynamoDB – Monitoraggio (Italiano) | Amazon DynamoDB - Monitoring (Italian)
Amazon Web Services via AWS Skill Builder
Amazon DynamoDB – Monitoraggio (Italiano) | Amazon DynamoDB - Monitoring (Italian)
Amazon Web Services via AWS Skill Builder
Amazon DynamoDB – Monitoramento (Português) | Amazon DynamoDB - Monitoring (Portuguese)
Amazon Web Services via AWS Skill Builder
Amazon DynamoDB - Monitoring
Amazon Web Services via AWS Skill Builder