Fargate y Lambda: todo sobre el serverless de AWS
Guía sencilla para entender el concepto serverless y la diferencia entre Fargate y Lambda en este contexto.
¿Fargate y Lambda son serverless?
Sí, ambos son servicios serverless.
Pero… no significan lo mismo ni se utilizan para las mismas necesidades.
1. Definición de “serverless” (en español sencillo):
Serverless = no tienes que gestionar ningún servidor.
No configuras ninguna máquina, ni sistema operativo, ni actualizaciones. Te centras solo en tu código o tu contenedor, y AWS se encarga del resto.
Comparación según el modelo serverless:
| AWS Lambda | AWS Fargate | |
|---|---|---|
| ¿Serverless? | Sí | Sí |
| ¿Gestionas un servidor? | No | No |
| ¿Qué despliegas? | Una función | Un contenedor Docker |
| ¿Escalabilidad automática? | Sí | Sí |
| ¿Pago por uso? | Sí (por invocación y por duración) | Sí (por segundos o minutos de ejecución) |
| Duración de ejecución | Corta (hasta 15 min como máximo) | Larga (horas, días…) |
| ¿Se activa por eventos? | Sí (p. ej.: S3, API Gateway…) | No (es una aplicación que se ejecuta o escucha) |
| ¿Ideal para? | Pequeñas funciones, automatizaciones | Aplicaciones web/API en contenedores |
Nivel de completitud (¿cuál es el más “completo”?)
Si quieres saber cuál permite hacer más cosas:
- Fargate es más completo, porque te permite ejecutar cualquier tipo de aplicación, como si tuvieras un servidor clásico (pero sin ocuparte de él).
- Lambda es más limitado, pero ultra sencillo para ejecutar tareas concretas.
Resumen claro:
| Quieres… | Usa… |
|---|---|
| Ejecutar una función cuando ocurre un evento (envío de correo, procesamiento de imágenes) | Lambda |
| Desplegar una API completa, un backend en Node, Python, etc. dentro de un contenedor | Fargate |
Ejemplos concretos
Con Lambda (Serverless Functions)
- Envío de un correo cuando se envía un formulario
- Procesamiento de una imagen cuando se sube
- Copia de seguridad de datos cuando cambia un archivo
Con Fargate (Serverless Containers)
- Sitio web completo con base de datos
- API backend que funciona 24/7
- Servicio de procesamiento de datos en continuo
Ventajas del serverless
1. Sin gestión de infraestructura
- Sin servidores que configurar
- Sin actualizaciones del sistema
- Sin mantenimiento de servidores
2. Costes optimizados
- Pago únicamente por el uso
- Sin costes fijos
- Escalabilidad automática
3. Foco en el código
- Desarrollo más rápido
- Menos complejidad técnica
- Más tiempo para las funcionalidades
Buenas prácticas
Para Lambda
- Mantener las funciones cortas
- Optimizar el tiempo de ejecución
- Gestionar los errores correctamente
Para Fargate
- Optimizar el tamaño de los contenedores
- Configurar el auto-scaling
- Vigilar los costes
Conclusión
El serverless, ya sea con Lambda o con Fargate, te permite centrarte en tu código en lugar de en la infraestructura. La elección entre ambos depende de tus necesidades:
- ¿Funciones cortas y basadas en eventos? → Lambda
- ¿Una aplicación completa y continua? → Fargate
Recursos complementarios
Acerca de InSkillCoach
Experto en formación y tecnologías
Coach especializado en tecnologías avanzadas e IA, impulsado por GNeurone Inc.
Certificaciones:
- AWS Certified Solutions Architect – Professional
- Certificaciones de Google Cloud
- Microsoft Certified: DevOps Engineer Expert
- Certified Kubernetes Administrator (CKA)
- CompTIA Security+
Comentarios
Los comentarios funcionan con GitHub Discussions
Inicia sesión con GitHub para participar en la discusión