У меня есть приложение NodeJS со следующей ситуацией: я получаю запрос от пользователя на вычисление чего-то, что требует использования очень сложной математической формулы. В настоящее время я запускаю весь этот процесс в этот момент, вычисляю значение, а затем отправляю его обратно пользователю. К сожалению, это не очень удобно для асинхронности :)
Вместо этого я хотел бы запустить всю эту операцию в фоновом режиме, и как только задача будет завершена, рабочий возвращается ко мне с любым вычисленным значением, которое я затем отправляю обратно пользователю.
Я просматривал различные очереди заданий, в том числе Kue, Celery, Resque и Beanstalk, но ни один из них не предоставляет эту функцию. Они отлично работают для таких вещей, как отправка электронных писем или выполнение любого вида работы, которая не требует получения какой-либо ценности обратно, просто ясно, было ли это успешным или нет, но, похоже, нет ничего, что позволяло бы worker, чтобы фактически отправить пользовательское сообщение обратно исходному производителю, создавшему задачу.
Я ошибаюсь, говоря, что ни одна из упомянутых выше очередей не поддерживает это? Если да, укажите, где в документации я могу узнать об использовании этой функции. В противном случае, не могли бы вы указать мне какие-либо другие, которые поддерживают эту функцию?