AWS Lambda: qué es, cómo usarlo, cuándo usarlo y cuándo no
Usar AWS Lambda – Un servicio sin servidor basado en eventos que le permite ejecutar código sin tener que administrar servidores. Servicios similares incluyen funciones de nube de Microsoft Azure y Google.
Ventajas
Algunas ventajas de usar AWS Lambda incluyen:
- Pago por uso: en AWS Lambda, solo se le cobra por la cantidad de solicitudes y la duración de sus funciones,
- esto significa que solo pagará por lo que use, más información sobre precios en https://aws .amazon.com/lambda/precios
- Escalado automático: si ya se está manejando una solicitud, AWS Lambda proporcionará instancias separadas para solicitudes simultáneas;
- de manera predeterminada, su cuenta tendrá un límite de 1000 solicitudes simultáneas en todas las funciones de Lambda en una región, pero si lo necesita,
- puede solicitar un aumento de cuota, más información en https://docs.aws.amazon.com/lambda/latest/dg/lambda-concurrency.html
- de manera predeterminada, su cuenta tendrá un límite de 1000 solicitudes simultáneas en todas las funciones de Lambda en una región, pero si lo necesita,
- Sin servidor: no tendrá que proporcionar ni administrar la infraestructura de su función Lambda,
- simplemente cargue su código como un archivo .zip o una imagen de contenedor y estará listo para comenzar.
Desventajas y limitaciones
Lambda tiene muchas ventajas, pero no todo son rosas, echemos un vistazo a algunas desventajas y algunas limitaciones:
- Sin servidor: tanto una ventaja como una desventaja, ¿por qué?
- Es simple, si necesita tener el control total del entorno en el que se ejecuta su código, Lambda no le ofrecerá esta opción.
- 10 GB de almacenamiento temporal: en Lambda, tendrá hasta 10 GB de almacenamiento temporal para su código,
- en la mayoría de los casos será suficiente, pero en algunos casos es posible que necesite más (archivos grandes como videos…).
- Límite de tiempo de espera de 15 minutos: 15 minutos es el tiempo de espera máximo que puede configurar en su función Lambda,
- nuevamente, esto se ajustará a la mayoría de las funciones, pero para algunas, puede que no sea suficiente.
¿Cómo usarlo?
Después de crear su cuenta de AWS (no cubriré este proceso aquí), puede acceder al servicio de Lambda. Lo primero que verá es la siguiente página:
Allí tendrás algunos ejemplos con diferentes tecnologías: .NET, Node.js, Go…
- Mirando esos ejemplos, se dará cuenta de que es bastante simple configurar tu primera función Lambda,
- para hacerlo, hagamos clic para crear una función. , después de hacerlo, verás esta pantalla:
Allí, podrá comenzar su función con un simple hola mundo, usar un plano o seleccionar una imagen de contenedor; luego tendrá algunas configuraciones más, como el nombre de su función, el tiempo de ejecución de su función… creemos nuestro ejemplo de hola mundo.
Después de crear su primera función, será redirigido a ella y tendrá la siguiente vista:
allí verá que se generó una función de controlador para nosotros, y esa es la función que Lambda siempre ejecutará, por lo que siempre debe tener un controlador para ejecutar, así es como manejará sus solicitudes.
Su función puede tratar con solicitudes HTTP, conexiones/mensajes de WebSocket… pero no cubriremos esto aquí.
Como puede ver en el lado derecho, puede cargar su código desde un archivo .zip o desde una ubicación S3, incluso puede codificar en la sección “Código fuente”, conviértalo en su área de juegos para descubrir lo que puede hacer con Lambda. .
Cuándo usarlo y cuándo no
- Lambda es una excelente alternativa si no necesita tener un control total del entorno en el que se ejecuta su código y si su uso respeta las limitaciones de Lambda,
- lo ayudará a implementar más rápido y su código se escalará automáticamente, por lo que no tendrá que preocuparse mucho sobre escalarlo,
- también, solo pagará lo que use, y la mayoría de las veces es una oferta realmente buena.
- lo ayudará a implementar más rápido y su código se escalará automáticamente, por lo que no tendrá que preocuparse mucho sobre escalarlo,
Cuando su proyecto comienza a crecer, Lambda puede no ser la mejor opción, eso se debe a que es posible que necesite más control sobre el entorno en el que se ejecuta su código o el período de ejecución puede ser tan largo que valdría la pena optar por un EC2 o de lo contrario. , aún podría usar Lambda para sus microservicios.
Conclusiones
- Hay muchas ventajas y desventajas de usar AWS Lambda,
- puede o no encajar en su proyecto, pero le sugiero que lo pruebe de todos modos.
- Puede crear algunos proyectos pequeños para ver de qué es capaz Lambda;
- después de todo, hay un nivel gratuito, por lo que no se le cobrará por algunas pruebas pequeñas.
Espero poder brindarles algunas ideas sobre cómo pueden usar las funciones de Lambda en sus proyectos y su potencial y, con suerte, algunos de ustedes pueden dar el primer paso hacia el uso de las funciones de Lambda.
Gracias por llegar hasta aquí, si encuentras esto útil no olvides dejar un👍🏼y suscribirse para recibir más contenido.
Si le interesa, puede echar un vistazo a algunos de los otros artículos que he escrito recientemente sobre AWS y Laravel: