Volver a proyectos

05 / BACKEND · PIPELINE ASÍNCRONA

Backend documental listo para producción

Pipeline asíncrona de procesamiento de documentos construida para que un trabajo no pueda perderse en silencio, con las rutas de error probadas y no solo descritas. La extracción de facturas es el ejemplo.

BackendReliabilityOpen source
Concepto de interfaz · vista ilustrativa — Backend documental listo para producción
Concepto de interfaz · vista ilustrativa

Resumen

Pipeline asíncrona de procesamiento de documentos construida para que un trabajo no pueda perderse en silencio, con las rutas de error probadas y no solo descritas. La extracción de facturas es el ejemplo.

El reto

En las colas de trabajo los jobs desaparecen cuando Redis cae, o se reintentan errores que nunca pueden tener éxito gastando llamadas de pago.

Enfoque arquitectónico

PostgreSQL como fuente de verdad, Redis y ARQ como transporte, un worker que reclama cada job de forma condicional en la base de datos.

La solución

Documento y job se confirman primero en PostgreSQL y el encolado llega después; los jobs estancados se recuperan sin consumir intentos; la reintentabilidad es una clasificación, no un contador.

Funciones principales

  • Jobs que sobreviven a una caída de Redis
  • Reintentos solo para errores reintentables
  • Migraciones probadas en CI sobre PostgreSQL real
  • Umbral de cobertura de tests del 90%

Dirección tecnológica

PythonFastAPIPostgreSQLRedis

Código en GitHub

Los hechos

  • Cobertura mínima de tests del 90 %, exigida en CI
  • Migraciones probadas en PostgreSQL real en cada push
  • Tareas que sobreviven a la caída de Redis, reintentos solo si procede
Iniciar un proyecto

Siguiente proyecto

CommerceAI Agent