AWS Lambda y la computación serverless

Resumen

AWS Lambda es el servicio de computación serverless de Amazon Web Services que ejecuta tu código en respuesta a eventos, sin que tengas que aprovisionar ni mantener servidores. Si trabajas con desarrollo en la nube y buscas pagar solo por lo que usas, esta es la pieza que cambia las reglas.

¿Qué es la informática sin servidor y por qué importa?

La computación serverless significa ejecutar código sin gestionar la infraestructura que lo corre. No es que no existan servidores, es que tú no tienes que verlos, configurarlos ni pagarlos por hora.

Para entenderlo, piensa en un caso concreto del [1:00]: quieres publicar un tweet automático todos los días con la tasa de conversión de bitcoin a dólar. Si lo haces a la antigua, necesitas levantar una instancia en Amazon EC2, elegir un sistema operativo Linux, instalar Python o Node.js, escribir tu código y programar una tarea para que se ejecute a las 9:00 a.m.

El problema es que terminas pagando por el servidor encendido 24/7, por la red, por el almacenamiento en disco, por el tráfico, y además mantienes el sistema operativo con sus parches de seguridad y de kernel. Mucho trabajo para un script que corre un minuto al día.

¿Qué significa serverless? Es un modelo donde escribes tu código y el proveedor de nube se encarga del servidor, el sistema operativo y la escalabilidad. Tú solo pagas por el tiempo de ejecución.

¿Cómo funciona AWS Lambda con eventos?

Lambda ejecuta tu código en respuesta a eventos. Ese evento puede ser un temporizador que lo dispara a una hora fija, alguien que visita una parte específica de tu sitio web, una imagen que se sube a un bucket, y muchas más opciones.

Del [3:00] en adelante queda claro el flujo: tú subes el código a Lambda usando sus herramientas de línea de comandos y listo. AWS lo ejecuta donde quiera, en su infraestructura, y tú no tienes que preocuparte por dónde corre ni cómo escala.

¿Qué casos de uso reales tiene Lambda?

Los ejemplos que aparecen en clase son muy aterrizados. Imagina un sitio web para compartir imágenes:

  • Disparar una Lambda cada vez que alguien sube una foto para redimensionarla automáticamente y ahorrar espacio en el almacenamiento en la nube.
  • Generar miniaturas (thumbnails) al instante de cada imagen cargada.
  • Ejecutar tareas programadas tipo cron, como el tweet diario del precio de bitcoin.
  • Procesar eventos de otros servicios de AWS sin levantar infraestructura adicional.

Lambda está en todas partes hoy en día, haciendo tareas pequeñas y grandes que facilitan la vida de quienes desarrollan en la nube.

¿Cuánto cuesta usar AWS Lambda?

La facturación de Lambda se cobra por milisegundos de ejecución y el precio cambia según la cantidad de RAM que asignes a tu función. Esa combinación de tiempo más memoria es lo que define tu factura mensual.

Un ejemplo concreto del [4:30]: si tu Lambda usa 128 MB de RAM y la ejecutas 30 millones de veces al mes, el costo aproximado es de 11.63 dólares mensuales. Para el volumen que estás moviendo, es superbarato.

¿Cuándo conviene usar Lambda en vez de EC2? Cuando tu código corre por ráfagas cortas, responde a eventos puntuales o tiene un volumen variable. Si necesitas un proceso corriendo todo el día sin pausa, EC2 puede tener más sentido.

¿Qué te ahorras al migrar a Lambda?

Más allá del dinero, te ahorras tiempo de operación. No mantienes el sistema operativo, no aplicas parches de kernel, no actualizas la versión del lenguaje, no pagas almacenamiento ni red en reposo.

Esa es la verdadera ventaja: liberas horas de trabajo de infraestructura para enfocarte en escribir código que resuelva problemas. Si tienes un caso de uso que encaja, aprovecha Lambda y cuéntame en los comentarios qué función serías la primera en migrar.