Contenido del curso

Microsoft Azure Fundamentos

Qué es serverless y cómo funciona en Azure

Resumen

El modelo serverless en Azure se suma a los tres modelos tradicionales de la nube (IaaS, PaaS y SaaS) y resuelve algo muy concreto: te permite desplegar funciones sin preocuparte por el hardware, el escalado ni la configuración de servidores. Si estás aprendiendo Azure y quieres entender cuándo conviene este enfoque, aquí encuentras la explicación con un ejemplo práctico paso a paso.

Qué significa serverless y por qué no implica ausencia de servidores

La palabra serverless puede confundir, así que conviene aclararla con una analogía cercana. Piensa en wireless: tu computadora no necesita un cable para conectarse al router, pero el router sí necesita un cable para llegar al proveedor de internet. En la milla final, tú no ves el cable.

Con serverless pasa algo parecido. Sí existen servidores y sí hay infraestructura desplegada por detrás, pero en la parte que a ti como desarrollador te toca, no tienes que preocuparte por ninguna pieza de ese hardware [0:30].

¿Qué es serverless en Azure? Es un modelo de cómputo donde despliegas tu código (por ejemplo, funciones) sin gestionar servidores. Azure se encarga del hardware, el escalado y la disponibilidad de forma automática.

Cómo se crea una Function App en Azure paso a paso

Para trabajar con serverless en Azure, el recurso estrella es Azure Function App. Antes de crearlo necesitas dos cosas previas: un grupo de recursos y una cuenta de almacenamiento. Esa cuenta no es serverless en sí misma, pero es un requisito para que las funciones operen [1:30].

El flujo, ejecutado desde la terminal con Azure CLI, se ve así:

  1. Crear un grupo de recursos donde vivirán todos los elementos.
  2. Crear una storage account con az storage account create, indicando nombre, ubicación, grupo de recursos y SKU.
  3. Crear la Function App con az functionapp create, definiendo grupo de recursos, plan de consumo, ubicación, nombre (en el ejemplo, functionappadmin), cuenta de almacenamiento y runtime.

Qué runtime puedes elegir para tus funciones

El runtime es el lenguaje o entorno de ejecución sobre el que correrá tu función. En el ejemplo se usa .NET, pero también puedes elegir Java, Node o Python según el lenguaje en el que prefieras escribir tu código [2:45].

Si no especificas la versión del runtime, Azure toma por defecto la versión más reciente disponible, que en este caso es la versión 4.

Por qué no necesitas configurar escalado en una Function App

Una vez creada la Function App, el portal de Azure te muestra varias secciones: Application Insights (agregado por defecto), archivos y claves de aplicación, centros de implementación y configuración para variables de entorno. Hasta ahí, todo parecido a otros servicios.

La diferencia aparece cuando entras a la sección de redes. No hay opción para escalar de manera automática, ni vertical ni horizontalmente, ni para agregar nuevas instancias [3:50]. Y eso no es un error: es justo el punto del modelo serverless.

¿Cómo escala una Azure Function App si no configuro nada? Azure ajusta el hardware de forma automática según la demanda de solicitudes. Si llegan más peticiones, el hardware crece; si bajan, se contrae. Tú no haces nada.

Esto significa que tu única responsabilidad es desplegar el código de tus funciones. No lidias con instalación de software, configuración de firewall, parches de sistema operativo ni dimensionamiento de máquinas.

Qué tipo de soluciones encajan bien con Function App

Una Function App te permite desplegar en una URL pública un conjunto de funciones que se comportan como pequeños fragmentos de métodos de una API. Cada función responde a un evento o a una petición específica, lo que la hace ideal para:

  • Endpoints ligeros que reciben datos y devuelven una respuesta.
  • Tareas en segundo plano disparadas por eventos (subida de archivos, mensajes en cola).
  • Integraciones puntuales entre servicios sin levantar una API completa.

¿Cuándo conviene usar serverless en lugar de PaaS o IaaS? Cuando tu carga es variable o impredecible, cuando quieres pagar solo por ejecución y cuando no quieres gestionar servidores. Si necesitas control total del sistema operativo, mejor IaaS.

En qué se diferencia serverless de IaaS, PaaS y SaaS

En IaaS administras máquinas virtuales, sistema operativo y red. En PaaS te despreocupas del sistema operativo, pero sigues configurando escalado y planes. En SaaS consumes una aplicación lista. Con serverless, el foco se mueve un paso más allá: subes tu función y Azure resuelve hardware, escalado e instancias por ti.

Esa es la promesa práctica del modelo: menos fricción operativa, más tiempo en el código que realmente le importa a tu producto. Si ya probaste crear tu primera Function App, cuéntame qué runtime elegiste y para qué caso de uso la estás pensando.