Я создаю NodeJs, полностью в Javascript / NodeJs (MEAN). Дело в том, что когда пользователь отправляет POST-данные, я сначала должен сохранить их, а затем запустить 4 параллельных процесса (неблокирующие) и, наконец, отправить ответы обратно пользователю.
Моя проблема - 4 параллельных процесса.
- Они не должны блокировать выполнение запроса
- Ответ, отправленный обратно пользователю, не зависит от его результата (только в зависимости от операции сохранения)
- Поскольку все сохраняемые данные должны проходить через все 4 параллельных процесса, я должен реализовать что-то вроде очереди
- Результат 4 параллельных процессов каждой из данных должен быть сохранен в файл журнала
- 4 параллельных процесса взаимодействуют с MongoDB
Как создать фоновых рабочих, которые будут получать данные от пользователя и отправлять их в конвейер? Конвейер не должен блокировать обработку запроса пользователя.