Imagina poder ejecutar aplicaciones completas en la nube sin preocuparte por instalar sistemas operativos, aplicar parches o configurar antivirus. Eso es exactamente lo que promete el modelo serverless, y es una de las bases fundamentales para entender los servicios de AWS y prepararse para la certificación Cloud Practitioner.
¿Qué significa serverless y por qué es tan relevante?
Serverless es la capacidad de ejecutar una aplicación basada en servidor sin la necesidad de administrar uno [0:15]. Suena contradictorio, pero la idea es simple: las aplicaciones siguen corriendo en servidores, solo que tú no te encargas de ellos. Olvídate del acceso remoto, del sistema operativo y de toda la administración tradicional.
Al eliminar esa carga operativa, todo el esfuerzo se concentra en lo que realmente importa: el código de la aplicación [1:07]. Este cambio de enfoque permite a los equipos de desarrollo ser más productivos y reducir costos asociados a la gestión de infraestructura.
Un dato clave que no puedes olvidar: cuando pienses en serverless dentro de AWS, piensa inmediatamente en AWS Lambda [1:22]. Lambda es el servicio insignia de computación serverless en la plataforma.
¿Cuáles son los principales servicios serverless en AWS?
AWS ofrece un ecosistema completo de servicios que operan bajo el modelo serverless [1:35]. Estos son los más importantes:
- Amazon S3: almacenamiento por objetos donde puedes guardar, consumir y asegurar información sin administrar servidores detrás [1:42].
- Amazon DynamoDB: base de datos de tipo llave-valor, completamente administrada, que cobra únicamente por la cantidad de lecturas, escrituras y el almacenamiento consumido [2:02]. Puedes crear una tabla desde la consola de forma inmediata.
- Amazon API Gateway: funciona como una puerta de entrada que recibe solicitudes y las redirige al interior de tu arquitectura [2:34]. Una arquitectura serverless típica involucra API Gateway, Lambda, DynamoDB y S3.
- Amazon Aurora Serverless: base de datos relacional que escala automáticamente en milisegundos según la demanda [3:24]. A diferencia de DynamoDB, que es no relacional, Aurora es relacional y puede crecer o decrecer de forma dinámica.
- AWS Lambda: el servicio central de computación serverless [3:55].
- AWS Fargate: la opción serverless para desplegar contenedores en AWS [4:06].
¿Cómo funciona AWS Lambda y cuál es su modelo de precios?
Lambda no aprovisiona infraestructura en EC2, precisamente porque es serverless [4:16]. Para entender su funcionamiento, pensemos en un ejemplo práctico: una aplicación generadora de memes.
¿Qué pasa cuando ejecutas una función Lambda?
Cuando un usuario carga una imagen y envía el texto, la función Lambda toma ambos elementos, los combina y genera el meme [4:40]. Sin embargo, hay una restricción importante: el tiempo máximo de ejecución es de quince minutos [5:00]. Si tu procesamiento necesita más tiempo, deberías considerar servicios de contenedores.
La ejecución es bajo demanda [5:22]. La función permanece inactiva hasta que un evento la despierta. Por ejemplo, cuando Carlos carga una imagen, se genera el evento, Lambda procesa el meme y vuelve a su estado de reposo [5:36].
¿Cómo escala Lambda automáticamente?
Si Carlos y diez mil personas más envían memes simultáneamente, Lambda se despierta y escala internamente de forma automática para atender todas las solicitudes [5:55]. Al terminar, regresa a su estado natural.
¿Cuánto cuesta usar Lambda?
El modelo de precios en serverless es completamente por demanda [6:22]. Lambda cobra por cuatro factores:
- Cantidad de solicitudes: no es lo mismo una solicitud que diez mil [6:30].
- Cantidad de memoria asignada: procesar un meme a la vez consume menos memoria que procesar cincuenta simultáneamente [6:44].
- Tiempo de ejecución: el tiempo que tarda el código en completar el procesamiento [6:58].
- Tipo de arquitectura: puede ser X86 o ARM [7:12].
¿Qué eventos pueden despertar a Lambda?
Lambda es un servicio basado en eventos [7:18]. Algunos disparadores comunes son:
- Una llamada desde un API Gateway.
- Una publicación en DynamoDB.
- La carga de un archivo en Amazon S3.
- Una invocación directa.
Además, Lambda soporta múltiples lenguajes de programación como Go, Python, Node y .NET [7:50], y se integra con Amazon CloudWatch para monitorear rendimiento y revisar logs cuando algo falla [8:00]. La integración con todo el ecosistema de servicios AWS es directa y visible desde la consola [8:22].
Si ya entendiste estos conceptos, completa el quiz del dominio. Las preguntas son muy similares a las del examen de certificación Cloud Practitioner. Déjanos en los comentarios cómo crees que el modelo de precios serverless cambia la forma de planificar costos en la nube.