Loading repository data…
Loading repository data…
Lostovayne / repository
Este proyecto implementa un sistema robusto y escalable de colas de tareas (Background Jobs) utilizando PostgreSQL como backbone y Graphile Worker para el procesamiento. Desarrollado con Bun para maximizar el rendimiento y la velocidad de ejecución.
A transparent discovery signal based on current public GitHub metadata.
This score does not audit code, security, maintainers, documentation quality, or suitability. Verify the repository and its current documentation before adoption.
Este proyecto implementa un sistema robusto y escalable de colas de tareas (Background Jobs) utilizando PostgreSQL como backbone y Graphile Worker para el procesamiento. Desarrollado con Bun para maximizar el rendimiento y la velocidad de ejecución.
El sistema está diseñado para manejar altas cargas de trabajo, garantizando la persistencia, reintentos automáticos y monitoreo en tiempo real de las tareas.
git clone <tu-repo>
cd queue-postgresql
bun install
Copia el archivo de ejemplo y configura tu conexión a base de datos:
cp .env.example .env
Asegúrate de configurar DATABASE_URL y otras variables según tu entorno.
Inicia la API principal:
bun run dev
Inicia el proceso de worker para consumir las tareas:
bun run worker:dev
El proyecto incluye una suite de scripts automatizados ubicados en la carpeta scripts/ para pruebas y mantenimiento.
Ejecuta una carga constante de trabajos para evaluar el rendimiento:
# Test de estrés estándar
bun run test:stress:const
# Test específico (1000 jobs, concurrencia 3)
bun run test:stress:5000
Para validar el despliegue en un entorno de nube:
bun run cloud:stress
Vigila el estado de la cola en tiempo real (Jobs pendientes, fallidos, completados):
bun run queue:watch
queue-postgresql/
├── 📂 scripts/ # Scripts de utilidad y testing
│ ├── cloud-stress-test.ts
│ ├── queue-stats-watch.ts
│ └── test-queue.ts
├── 📂 src/ # Código fuente principal
│ ├── app.ts # Entry point de la API
│ ├── worker.ts # Entry point del Worker
│ └── ...
├── 📂 resources/ # Assets y recursos estáticos
├── package.json
└── README.md
Las contribuciones son bienvenidas. Por favor, abre un issue o envía un PR para mejoras.