BullMQ — очередь заданий для Node.js на базе Redis. Чтобы оценить её пригодность, начните с работы, которая может завершиться после HTTP-ответа и требует отслеживания или повторных попыток.
Рассмотрим большой отчёт. Его создание внутри запроса может заставить пользователя ждать до тайм-аута. Очередь позволяет принять работу, вернуть ID задания и обрабатывать его отдельно.
1. Посмотрите, что меняется при переносе работы в очередь
[User] -> [API: submit job] -> [Redis / BullMQ] -> [Worker]
| |
[Return job ID] [Saved report]
