0%
Inicio 9 Glossary Item 9 Serverless Architecture
« Back to Glossary Index

Nivel Principiante

Imagina que quieres organizar una fiesta. En lugar de alquilar un local entero, pagar el mantenimiento y asegurarte de que todo funcione, decides usar un servicio de catering. Solo pides la comida que necesitas para la cantidad de gente que va a ir, y el servicio se encarga de todo. Serverless Architecture es lo mismo para las aplicaciones: tú escribes tu código (la comida), y un servicio en la nube (el catering) se encarga de todo lo demás, como el servidor, la infraestructura y el mantenimiento. Solo pagas por el tiempo que tu código se está ejecutando.

Nivel Intermedio

Serverless Architecture (arquitectura sin servidor) es un modelo de desarrollo en la nube que permite a los desarrolladores construir y ejecutar aplicaciones sin tener que gestionar la infraestructura del servidor. El proveedor de la nube (como AWS Lambda, Google Cloud Functions o Azure Functions) se encarga de toda la gestión del servidor, el aprovisionamiento, la escalabilidad y el mantenimiento. El nombre «serverless» es un poco engañoso, ya que los servidores siguen existiendo, pero la responsabilidad de su gestión recae completamente en el proveedor.

El modelo se basa en funciones como servicio (FaaS), donde el código de la aplicación se divide en funciones pequeñas y de corta duración. Estas funciones se activan por eventos (como una petición HTTP, la carga de un archivo en una base de datos o un evento de tiempo) y se ejecutan solo cuando son necesarias.

Nivel Avanzado

Técnicamente, la arquitectura sin servidor se basa en un modelo de computación basada en eventos. En lugar de tener servidores siempre encendidos y listos para recibir peticiones, el proveedor de la nube tiene un pool de servidores que ejecutan las funciones bajo demanda.

Las características clave de este modelo son:

  • Escalabilidad Automática: El proveedor de la nube escala las funciones automáticamente en función del tráfico. Si se necesitan 1,000 instancias de una función al mismo tiempo, el proveedor las crea de forma instantánea sin intervención del desarrollador.
  • Pago por Uso: El modelo de facturación es muy granular. Solo se paga por el tiempo de ejecución y el número de veces que se llama a la función, lo que puede resultar en un costo mucho menor que el de alquilar un servidor 24/7.
  • Estado Efímero: Las funciones sin servidor son efímeras y no guardan un estado entre ejecuciones. Para almacenar datos, se deben utilizar servicios de base de datos o almacenamiento en la nube, lo que fomenta una arquitectura stateless.
  • Integración con Servicios en la Nube: Las funciones sin servidor se integran fácilmente con otros servicios de la nube, como bases de datos, almacenamiento de archivos o servicios de mensajería, lo que facilita la creación de flujos de trabajo complejos y orientados a eventos.

La arquitectura sin servidor es ideal para la creación de microservicios, APIs REST, procesamiento de datos en tiempo real y tareas automatizadas. Aunque ofrece grandes ventajas en escalabilidad y costos, también presenta desafíos en la depuración y en el control de la infraestructura, lo que requiere un cambio de mentalidad en la forma en que los desarrolladores diseñan y despliegan sus aplicaciones.


« Volver al índice del glosario