🚀 Características y Arquitectura Backend
Hilos Virtuales (Loom)
Delegación del trabajo I/O pesado a un
TaskExecutorAdapter nativo de Java 21, liberando la conexión HTTP instantáneamente (202 Accepted).Bulk Inserts JDBC
Sinergia entre Spring Batch (
chunk(500)), Hibernate (allocationSize=500) y el driver de PostgreSQL para inserciones masivas.Defensa Multicapa (WAF)
Aislamiento
@Transactional y WAF simulado contra inyección SQL. Uso de AtomicBoolean para bloquear ataques de concurrencia (TOCTOU).Resiliencia Fault-Tolerant
Políticas de omisión (
SkipPolicy). Los registros corruptos o vacíos se aíslan y descartan silenciosamente sin abortar el lote completo.Infraestructura Segura
Despliegue Multi-stage en Alpine Linux, operando bajo un usuario
spring (no-root) y persistencia de datos mediante volúmenes.🛠️ Stack Tecnológico
💻 Comandos de Desarrollo
La API expone sus servicios en el puerto8081 y requiere PostgreSQL en el puerto 5435.
📡 Documentación de la API (Endpoints)
La API opera bajo la ruta base/api/v1/etl. Las respuestas fallidas retornan una estructura estándar {"error": "Motivo del fallo"}.