Skip to main content

Arquitectura del API Gateway

Visión General​

El API Gateway de IRIS actúa como el punto de entrada único de la plataforma IDP, proporcionando un proxy inteligente que maneja la comunicación entre el frontend y los microservicios backend. En el pipeline, las Fases 5-6 utilizan OCR como parte de la extracción especializada.

Componentes Principales​

1. Proxy HTTP​

  • Propósito: Enrutar requests a los microservicios apropiados
  • Tecnología: Node.js con Express
  • Puerto: 8000 (por defecto)

2. Balanceador de Carga​

  • Algoritmo: Round-robin con health checks
  • Failover: Automático en caso de servicio no disponible
  • Timeout: 30 segundos por request

3. Cache Layer​

  • Motor: Redis (opcional)
  • TTL: Configurable por endpoint
  • Invalidación: Manual y automática

Flujo de Requests​

Configuración de Servicios​

const SERVICES = {
"image_processor": {
url: "http://localhost:8001",
timeout: 30000,
healthCheck: "/health"
},
"ml_embeddings": {
url: "http://localhost:8002",
timeout: 60000,
healthCheck: "/health"
},
"ml_classifier": {
url: "http://localhost:8003",
timeout: 45000,
healthCheck: "/health"
},
"ocr_extractor": {
url: "http://localhost:8004",
timeout: 90000,
healthCheck: "/health"
}
};

Patrones de Diseño​

Circuit Breaker​

  • Umbral de fallas: 5 errores consecutivos
  • Tiempo de espera: 60 segundos
  • Half-open: 1 request de prueba

Request/Response Transformation​

  • Input validation: JSON Schema validation
  • Output normalization: Formato estándar de respuesta
  • Error handling: Códigos HTTP consistentes

Monitoring y Observabilidad​

  • Métricas: Prometheus compatible
  • Logs: Structured logging con Winston
  • Tracing: Request ID propagation