Я хочу иметь возможность обрабатывать фоновые задания, с которыми будет связано несколько задач.Задачи могут состоять из запуска запросов API (блокирующих операций) и манипулирования и сохранения ответов.Некоторые из этих задач также могут иметь подзадачи, которые должны выполняться асинхронно.
Для таких языков, как Ruby, я мог бы использовать рабочий для выполнения заданий.Как я понимаю, каждый раз, когда новое задание попадает в очередь, новый поток выполняет его.Как я упоминал ранее, иногда задача может содержать серию подзадач, которые должны выполняться асинхронно, поэтому, как я вижу, у меня есть два варианта:
Добавить выполнение подшага в рабочую очередь(Но в задании может быть много подзадач, которые быстро заполнят очередь и заблокируют новые задания от обработки).
Что если я использую управляемый событиями Node-сервер для обработкивыполнение работы?Мне не нужно добавлять подзадачи в очередь, так как сервер с одним узлом может асинхронно обрабатывать всю работу.Что-то не так с этим?
Это первый раз, когда я сталкиваюсь с такой проблемой, и я хочу знать, какой подход лучше подходит для решения моей проблемы.