π Distributed Job Queue System
A scalable multi-queue job distribution system built with Node.js, Express, PostgreSQL, Redis, and Docker. Designed for parallel worker processing, real-time queue management, and fault-tolerant task execution.
π Features
β Multi-Queue Architecture (High / Medium / Low Priority)
β Redis-Based Queue Management
β Distributed Worker Processing
β Heartbeat-Based Worker Health Monitoring
β Automatic Job Reassignment on Worker Failure
β Retry Mechanism for Failed Jobs
β PostgreSQL Persistent Storage
β Fully Dockerized Microservice Setup
β Horizontal Worker Scaling
ποΈ System Architecture Client β API Server β Redis (Queue Layer) β Worker Containers β PostgreSQL (Persistent Store)
API server pushes jobs into Redis queues
Workers consume jobs from Redis
PostgreSQL stores job metadata & status
Health-check system monitors worker availability
π οΈ Tech Stack
Backend: Node.js, Express.js
Queue System: Redis
Database: PostgreSQL
Containerization: Docker, Docker Compose
Architecture: Distributed Multi-Queue Worker System
π³ Running with Docker docker-compose up --build
Services:
API Server
Redis
PostgreSQL
Worker Instances
π Job Lifecycle Pending β Queued β Processing β Completed β Failed β Retry π₯ Future Improvements
Dead Letter Queue (DLQ)
Rate Limiting
Auto Worker Scaling
Monitoring Dashboard (Prometheus + Grafana)
Kubernetes Deployment