API Gateway

Actúa como punto de entrada único para todas las solicitudes externas al sistema. Su función principal es enrutar las peticiones HTTP a los microservicios correspondientes, según la ruta definida. Esta solución permite abstraer la complejidad del sistema distribuido y facilitar la gestión centralizada de acceso a los recursos.

El gateway está implementado con Spring Cloud Gateway y configurado mediante el archivo application.properties, sin necesidad de anotaciones adicionales ni configuración por código. Cada ruta define:

  • Un id que representa el nombre lógico del servicio.

  • Un uri que corresponde al nombre del contenedor Docker o servicio en red local.

  • Un Path como predicado que determina qué rutas manejará.

  • Un filtro que agrega una cabecera personalizada (X-Gateway-Auth) a cada solicitud.

Rutas configuradas:

Microservicio
Ruta (Path)
URI (contenedor)

Cupones

/api/cupones/**

http://pago-cupon:8081

Pagos

/api/pagos/**

http://pago-cupon:8081

Cursos

/api/cursos/**

http://cursos:8082

Tickets

/api/tickets/**

http://tecnico-ticket:8083

Técnicos

/api/tecnicos/**

http://tecnico-ticket:8083

Gracias a esta configuración, el cliente puede acceder a todos los servicios usando una sola URL base del gateway, mientras que el gateway se encarga de redirigir internamente cada solicitud al servicio correspondiente.

Last updated