Cómo acelerar las funciones de AWS Lambda (Español LATAM) | How to Speed Up Your AWS Lambda Functions (LATAM Spanish)
Offered By: Amazon Web Services via AWS Skill Builder
Course Description
Overview
Situación
Como ingeniero DevOps de AnyCompany, Inc., se le ha asignado la responsabilidad de mejorar el rendimiento de las API de los productos de la empresa. Los datos de los productos se almacenan en una tabla de Amazon DynamoDB. Los clientes interactúan con estos datos mediante los puntos de enlace de Amazon API Gateway que mapea las solicitudes a una función de AWS Lambda. Esta aplicación realiza las siguientes acciones:
- un método HTTP Post que crea productos nuevos
- un método HTTP Get que recupera una lista de productos
- un método HTTP Get que recupera un producto mediante la ID del producto
- un método HTTP Delete que elimina un producto
Los clientes le dicen que quieren un tiempo de respuesta menor a 100 ms para todas las solicitudes. Sin embargo, han notado que, en promedio, las solicitudes tardan más que eso. En ocasiones, han notado que el tiempo de respuesta es de 1 segundo o más. Este problema es más frecuente cuando la aplicación está cargándose (aproximadamente 200 solicitudes por segundo).
Se le ha asignado la tarea de optimizar los productos API, de modo que el tiempo de respuesta promedio sea el menor posible. A su vez, tiene que resolver aquellas respuestas que están tardando más de 1 segundo. Con AWS Cloud9 como entorno de desarrollo y prueba, optimiza las funciones de Lambda para cumplir con las expectativas de los clientes. Usará una herramienta de prueba de carga de código abierto llamada Locust para generar una carga en la aplicación.
Información general sobre el laboratorio
Es hora profundizar el conocimiento de Lambda. Como ingeniero DevOps, tendrá que mejorar el tiempo de respuesta de Lambda para la aplicación sin servidor. En este laboratorio, comprenderá al fin la simultaneidad, el tamaño de memoria de la función, los arranques en frío y cómo alcanzar los mejores resultados con las funciones de Lambda. Explorará el ciclo de vida de una función de Lambda y aprenderá de qué maneras puede optimizar el rendimiento de la función.
Objetivos
Al finalizar este laboratorio, podrá realizar lo siguiente:
- implementar una función de Lambda con AWS Serverless Application Model (AWS SAM)
- observar las características de rendimiento de la función de Lambda para determinar posibles mejoras de rendimiento
- ajustar el límite de tamaño de la memoria de una función de Lambda para optimizar el rendimiento
- aplicar el conocimiento del ciclo de vida de la función de Lambda para determinar cómo optimizar la función
- configurar la simultaneidad aprovisionada y la simultaneidad reservada en una función de Lambda
- utilizar la simultaneidad aprovisionada y reservada para optimizar el rendimiento de la función de Lambda
Conocimientos técnicos previos necesarios
Este laboratorio usa una herramienta de prueba de carga de código abierto llamada Locust para generar una carga en la aplicación. La interfaz web de Locust usa un puerto 8089, el cual es el puerto predeterminado de Locust. Para obtener la mejor experiencia de aprendizaje, evite conectarse sobre una VPN mientras ejecuta este laboratorio, ya que podría encontrar errores en algunos pasos debido a que la VPN bloquea el puerto 8089.
Duración
El tiempo estimado para completar este laboratorio es de 60 minutos.
Significados de los íconos
A lo largo de este laboratorio, se utilizan varios íconos para llamar la atención sobre diferentes tipos de instrucciones y notas. En la siguiente lista, se explica el propósito de cada ícono:
- Comando: un comando que debe ejecutar.
- Resultado esperado: un resultado de ejemplo que puede utilizar para verificar el resultado de un comando o archivo editado.
- Nota: una sugerencia, consejo u orientación importante.
- Más información: dónde encontrar más información.
- Considere: un momento para hacer una pausa y considerar cómo aplicaría un concepto en su propio entorno o para iniciar una conversación sobre el tema en cuestión.
- Precaución: Información de especial interés o importancia (no es tan importante como para causar problemas con el equipo o los datos si la omite, pero podría ocasionar la necesidad de repetir ciertos pasos).
Tags
Related Courses
Startup EngineeringStanford University via Coursera Developing Scalable Apps in Java
Google via Udacity Cloud Computing Concepts, Part 1
University of Illinois at Urbana-Champaign via Coursera Cloud Networking
University of Illinois at Urbana-Champaign via Coursera Cloud Computing Concepts: Part 2
University of Illinois at Urbana-Champaign via Coursera