Glossan

¿Qué es Serverless?

También llamado: sin servidor, funciones como servicio, FaaS, edge functions

Definición

Serverless es un modelo en el que subes funciones de código y el proveedor se encarga de ejecutarlas cuando llega una petición, sin que tengas que gestionar servidores. Se paga por ejecución, no por tener un servidor encendido.

Los servidores siguen existiendo, pero no son asunto tuyo: no hay que instalar, actualizar ni dimensionar nada. Si llegan mil peticiones a la vez, el proveedor ejecuta mil copias de la función; si no llega ninguna, no pagas.

Ejemplo

Una función que responde a peticiones HTTP, en el formato que usan varias plataformas (Request/Response estándar):

export default async function handler(request) {
  const url = new URL(request.url);
  const nombre = url.searchParams.get("nombre") ?? "mundo";
  return new Response(JSON.stringify({ saludo: `Hola, ${nombre}` }), {
    headers: { "Content-Type": "application/json" },
  });
}

La plataforma la publica en una URL y la ejecuta en cada petición.

Ventajas e inconvenientes

A favor En contra
Nada que administrar Arranque en frío: la primera petición tras un rato inactiva tarda más
Escala solo, de cero a mucho Límites de tiempo de ejecución y memoria
Barato con poco tráfico o tráfico irregular Con tráfico alto y constante, puede salir más caro que un servidor
  Depende mucho del proveedor; migrar cuesta

Usos típicos

Endpoints de API, recibir webhooks, formularios de contacto en sitios estáticos, procesar imágenes al subirlas y tareas programadas.

Errores habituales

¿Tienes un producto o servicio relacionado con Serverless? Anúnciate en este término.

Términos relacionados

Categorías: DevOps Backend