Solución de problemas de aplicaciones sin servidor (Español LATAM) | Troubleshooting Serverless Applications (LATAM Spanish)
Offered By: Amazon Web Services via AWS Skill Builder
Course Description
Overview
Información general sobre el laboratorio
Información general
Una API es un conjunto de componentes que se unen para crear una aplicación. Permite escalar con facilidad, administrar las operaciones y administrar el código de partes individuales de la aplicación. Crear una API en un entorno sin servidor le permite diseñar componentes que se optimizan para trabajar a gran escala. Esto también le permite pagar únicamente los servicios que utilice. Esto es una gran ventaja; sin embargo, los componentes desacoplados en un entorno de nube pueden ser difíciles de solucionar y arreglar si algo sale mal. AWS ofrece varias herramientas diseñadas para ayudarlo a identificar problemas de forma fácil.
Objetivos
Después de completar este laboratorio, podrá hacer lo siguiente:
- comprender una arquitectura dirigida por eventos
- habilitar y utilizar AWS X-Ray y Amazon CloudWatch
- comprender cómo se configura AWS Step Functions para organizar aplicaciones sin servidor
- aprovechar Amazon Simple Queue Service (Amazon SQS) y las colas de mensajes fallidos
- comprender cómo solucionar problemas de arquitecturas sin servidor
- realizar actualizaciones de configuración para restaurar la funcionalidad de una API
Requisitos previos
Los requisitos de este laboratorio son los siguientes:
- Tener acceso a una computadora portátil con wifi y Microsoft Windows, macOS o Linux (Ubuntu, SuSE o Red Hat).
- No se puede acceder al entorno del laboratorio con un dispositivo iPad o una tableta, pero puede utilizar estos dispositivos para acceder a la guía del estudiante.
- En el caso de los usuarios de Microsoft Windows, deben tener acceso de administrador a la computadora
- Un navegador de Internet como Chrome, Firefox o Internet Explorer 9 (las versiones anteriores de Internet Explorer no son compatibles)
Duración
Le llevará noventa minutos completar este laboratorio.
Situación
Este laboratorio se creó con base en una aplicación de impresión de álbumes de fotos. La aplicación permite a los usuarios cargar un conjunto de imágenes que quieren imprimir en un álbum físico. Cada imagen se procesa para garantizar que se vea correctamente en el álbum. La aplicación utiliza AWS Step Functions para administrar el flujo de trabajo. El flujo de trabajo utiliza funciones de AWS Lambda con el fin de garantizar que cada imagen sea del tipo de archivo adecuado y utiliza Amazon Rekognition para garantizar que el contenido sea apropiado. El flujo de trabajo también redimensiona e imprime una marca de agua en las imágenes para luego generar una muestra en PDF para que el cliente apruebe. A continuación, Amazon Simple Notification Service (Amazon SNS) envía un correo electrónico al cliente para su aprobación antes de enviar el trabajo a Amazon Simple Queue Service (Amazon SQS). Amazon SQS envía el álbum al servicio externo de impresión para que lo imprima y envíe al cliente.
Desafortunadamente, un envío de código reciente dañó la aplicación, y los clientes están recibiendo varios errores cuando intentan proporcionar las imágenes para sus álbumes. Solucionará estos asuntos y arreglará la aplicación.
Entorno del laboratorio
El entorno utiliza Amazon API Gateway, funciones de Lambda, flujos de trabajo de Step Functions, buckets de Amazon Simple Storage Service (Amazon S3), tablas de Amazon DynamoDB y colas de Amazon SQS. Se introdujeron diversos errores en el entorno que deberá solucionar y resolver.
API Gateway aloja varias API delante de varias funciones de Lambda. DynamoDB se utiliza para almacenar metadatos sobre las imágenes que el usuario carga. El flujo de trabajo de Step Functions se inicia a fin de validar las imágenes y prepararlas para imprimir antes de enviar un enlace (mediante Amazon SNS) al usuario para que las verifique (esto se automatiza para los fines de este laboratorio). El usuario obtiene una vista previa en PDF del álbum antes de enviarlo al tercero a imprimir y enviar.
La siguiente imagen es un diagrama de arquitectura general del entorno:
Seleccione aquí para descargar la versión en alta resolución del diagrama de arquitectura.
La siguiente imagen es un diagrama detallado de la máquina de estado que procesa imágenes. Utilice esto para solucionar los problemas de la aplicación:
Seleccione aquí para descargar una versión en alta resolución de la máquina de estado que procesa imágenes.
Notas del diagrama de la máquina de estado que procesa imágenes:
#0: /batch: esta API de API Gateway se utiliza para pruebas. Invoca una función de Lambda que automatiza el proceso de carga del usuario contenido en el cuadro naranja.
#1: /addAlbum: el usuario envía una solicitud para que las URL prefirmadas carguen las imágenes. El usuario utiliza las URL prefirmadas para cargar las imágenes directamente en Amazon S3.
#2: /createBookBinding: el usuario invoca el proceso de creación del álbum cuando indica que completó la carga de imágenes.
#3: /invocation: el proxy aprueba el PDF mediante Lambda para las pruebas.
Nota: Con el fin de facilitar las pruebas, se creó una función de Lambda para generar álbumes aleatorios de forma automática. Esto acelerará el proceso de pruebas, ya que genera varios álbumes con diferentes imágenes cada uno para que pueda identificar mejor los problemas de la aplicación.
La siguiente imagen es un diagrama detallado de la máquina de estado que imprime los álbumes:
Seleccione aquí para descargar una versión en alta resolución de la máquina de estado que imprime los álbumes.
Tags
Related Courses
Google Cloud Functions Deep DiveA Cloud Guru Introduction to Amazon EventBridge
A Cloud Guru Introduction to Event-Driven Architecture
A Cloud Guru Adopción de la mentalidad sin servidor (Español LATAM) | Getting into the Serverless Mindset (Spanish from Latin America)
Amazon Web Services via AWS Skill Builder Amazon Connect and Amazon EventBridge Intermediate
Amazon Web Services via AWS Skill Builder