Saltar al contenido
Explorar conocimiento

concepto · intermedio · 3 min de lectura

API Gateway

Un API Gateway es el punto de entrada único para todas las APIs de un sistema, encargándose de enrutar requests, componer respuestas, autenticar, limitar tráfico y traducir protocolos.

No requiere conocimientos previos.

Alcance en breve

Cubre

  • api gateway as a core architectural concept

No cubre

  • implementation details beyond conceptual understanding

Supone

  • The reader understands basic distributed systems concepts.

Resumen

Un API Gateway es un servidor que actúa como fachada para un conjunto de microservicios o APIs internas. En lugar de que cada cliente —web, mobile, terceros— conozca las URLs de cada servicio, todos hablan con el gateway y él reenvía las solicitudes al servicio correspondiente. Es una evolución del reverse proxy especializada en tráfico de APIs.

Importa porque en arquitecturas de microservicios, un cliente que necesita datos de 5 servicios distintos haría 5 llamadas de red si hablara directamente con cada uno. El API Gateway puede recibir una sola solicitud, consultar los 5 servicios en paralelo, componer la respuesta y devolverla al cliente —patrón API Composition—. Además centraliza autenticación, rate limiting, logging, y transformación de protocolos (REST a gRPC, por ejemplo).

Alcance y supuestos

Este paquete cubre el concepto a nivel arquitectónico: qué es, qué problema resuelve, cómo se relaciona con otros patrones del ecosistema, y en qué contexto tiene sentido aplicarlo. No cubre detalles de implementación específicos de cada tecnología ni configuraciones de proveedores cloud concretos. Asume que el lector entiende los fundamentos de sistemas distribuidos y arquitectura de software.

Modelo mental

La recepcionista de un hotel grande. Cuando llamás para reservar, no te transfieren a ama de llaves para verificar disponibilidad, después a cocina para el desayuno, después a mantenimiento para el estacionamiento. La recepcionista consulta internamente todo lo necesario y te da una respuesta unificada. El API Gateway es esa recepcionista para tus servicios.

Uso práctico

  • Enrutamiento: redirige requests al microservicio correcto según el path, headers o parámetros.
  • Composición: agrega datos de múltiples servicios en una sola respuesta.
  • Autenticación centralizada: valida tokens JWT, API keys u OAuth en un solo lugar.
  • Rate limiting y throttling: protege los servicios backend del abuso.
  • Transformación de protocolos: expone REST hacia afuera mientras internamente habla gRPC o GraphQL.
  • Lógica de negocio: el gateway no debería contener reglas de dominio. Si la composición se vuelve compleja, considerar el patrón Backend for Frontend (BFF).

Implementaciones populares: Kong, Apache APISIX, Traefik, AWS API Gateway, Google Cloud Endpoints, Azure API Management.

Ejemplo trabajado: componer respuestas con un API Gateway

Una app mobile necesita mostrar el perfil de un usuario con sus últimas órdenes y sus métodos de pago guardados. Sin gateway, la app haría 3 llamadas: GET /users/42, GET /orders?userId=42, GET /payment-methods?userId=42. Con un API Gateway configurado con composición, la app hace una sola llamada GET /mobile/profile/42. El gateway consulta los 3 servicios en paralelo, compone el JSON y lo devuelve. La app mobile pasa de 3 round-trips a 1, bajando la latencia percibida de 900 ms a 350 ms.

Evidencia

  • Wikipedia, API gateway describe el rol del gateway como fachada, los patrones de uso en microservicios y las diferencias con un reverse proxy tradicional.

Fuentes citadas