Với background job (công việc không nên chặn HTTP response), NestJS tích hợp với BullMQ (một queue được hỗ trợ bởi Redis) qua @nestjs/bullmq. Bạn thêm job vào một queue và xử lý chúng bất đồng bộ trong các worker riêng biệt — giữ cho request nhanh và xử lý công việc nặng hoặc trì hoãn một cách đáng tin cậy.
Vấn đề mà queue giải quyết
Một số công việc quá chậm hoặc không nên chặn request:
✗ gửi email, xử lý ảnh/video, tạo báo cáo, gọi các API chậm
→ làm nó inline khiến người dùng phải chờ và nguy cơ timeout/thất bại
✓ ĐƯA công việc vào QUEUE → phản hồi ngay lập tức → một worker xử lý nó trong nền
