¿Qué es AWS Lambda?
AWS Lambda es un servicio informático sin servidor que permite ejecutar código sin aprovisionar ni administrar servidores. Lambda administra automáticamente la infraestructura subyacente, incluido el mantenimiento de los servidores, el aprovisionamiento de capacidad, el escalado y la aplicación de parches, para que pueda centrarse en la lógica de la aplicación.
Lambda proporciona dos primitivas de computación, cada una diseñada para distintos patrones de cargas de trabajo:
-
Funciones de Lambda: ejecute código en respuesta a eventos o llamadas a la API sin administrar servidores. Escriba una función controladora, conéctela a un desencadenador, como API Gateway, Amazon S3, Amazon SQS, EventBridge y más de 200 servicios de AWS, y Lambda la ejecutará. Cada invocación se ejecuta de forma independiente y sin estado compartido, con escalado horizontal para adaptarse a la demanda. Lambda administra los entornos de ejecución, el escalado, el enrutamiento y la tolerancia a errores.
-
MicroVM de Lambda: entornos de computación aislados con un inicio casi instantáneo y conservación del estado durante un máximo de 8 horas. Están diseñadas para cargas de trabajo que necesitan un entorno de computación dedicado para cada usuario o trabajo. Lambda administra el aislamiento, la capacidad y las redes. La aplicación usa las API de las MicroVM de Lambda y puntos de conexión HTTPS para conectar a cada usuario o trabajo con su entorno de computación.
Para obtener información acerca de los precios, consulte Precios de AWS Lambda
Comparación entre las funciones de Lambda y las MicroVM de Lambda
Las funciones de Lambda y las MicroVM de Lambda comparten una base común sin servidor:
-
Sin administración de servidores: AWS administra la infraestructura subyacente, la aplicación de parches a las instancias y la capacidad.
-
Facturación por uso: no se requieren compromisos iniciales. Solo se paga por los recursos utilizados.
-
Redes administradas: ambas proporcionan acceso de red entrante y saliente administrado por el servicio.
-
Virtualización de Firecracker: aislamiento en el nivel de la máquina virtual entre las cargas de trabajo.
Aunque comparten esta base, se utilizan para casos de uso distintos:
| Funciones de Lambda | MicroVM de Lambda | |
|---|---|---|
| Lo mejor para | Cargas de trabajo de solicitud y respuesta o basadas en eventos, como API, procesamiento de datos y automatización. | Entornos persistentes que ejecutan código que no es de confianza, generado por usuarios o por IA |
| Modelo de programación | Controlador de la función invocado en un tiempo de ejecución compatible | Cualquier aplicación: ejecute sus propios archivos binarios, escuche en puertos y use las capacidades del sistema operativo Linux |
| Duración | Hasta 15 minutos por invocación; flujos de trabajo de varios pasos de hasta un año con las funciones duraderas de Lambda | Hasta 8 horas por sesión; suspensión y reanudación entre sesiones |
| Entorno de tiempo de ejecución | Tiempos de ejecución de lenguajes proporcionados por el servicio; compatibilidad con tiempos de ejecución proporcionados por el cliente | Imágenes de MicroVM proporcionadas por el cliente |
| Redes de entrada | Invocaciones directas o integraciones de orígenes de eventos con servicios de AWS; compatibilidad con la transmisión de respuestas | Acceso entrante a cualquier puerto mediante protocolos de capa 7 de OSI |
| Simultaneidad | Una solicitud por entorno de ejecución a la vez | Varias conexiones simultáneas por MicroVM |
| Estado del entorno | Los entornos de ejecución se pueden reutilizar, lo que permite inicios en caliente, pero es posible que el estado no se conserve entre invocaciones | El estado de la memoria y del disco se conserva al suspender la MicroVM y se restaura al reanudarla |
| Escalado | Automático: Lambda crea y elimina los entornos de ejecución en respuesta al tráfico | Controlado por el desarrollador: el desarrollador crea, suspende, reanuda y termina las MicroVM mediante la API |
| Ciclo de vida | Completamente administrado por Lambda | Controlado por el desarrollador; políticas de inactividad opcionales para la suspensión y reanudación automáticas |
| Precios de | Por solicitud + GB-segundos de tiempo de ejecución | Por segundo de computación mientras está en ejecución + almacenamiento de instantáneas mientras está suspendida |