Saltar al contenido
API GatewayBordeContratos

Arquitectura de API Gateway

Un gateway es un borde: auth, ruteo y agregación gruesa. No debería convertirse en el lugar donde se esconden las reglas de negocio.

Experiencia personal

ProCrédito v2 pone un API gateway delante de microservicios Laravel (seguridad, settings, obligaciones, clientes). El gateway autentica y rutea; no posee las reglas de obligación.

Perspectiva técnica

Pon en el borde lo que toda petición necesita: terminación TLS, autenticación, rate limits, request IDs, ruteo. No pongas ahí “cómo se calcula un descuento”. Esa regla pertenece a un dominio que se puede probar sin levantar el borde.

Los backends-for-frontends son legítimos cuando un storefront y una consola admin necesitan agregados distintos. No lo son como una segunda capa de dominio que reimplementa servicios.

Timeouts y reintentos pertenecen al gateway con un presupuesto. Reintentar un POST no idempotente desde el borde es cómo cobras dos veces. Propaga un correlation ID y deja de inventar uno en cada servicio.

Architecture

Responsabilidades de borde, dominio detrás

Client

API Gateway

Auth, route, limits

Service A

Service B

Service C

Perspectiva técnica. El gateway rutea; los servicios poseen las reglas.