Если брокер сообщений поддерживает task status используйте его. Также, желательно, пользователю сообщать состояние задачи.
Передавать статусы согобщений, как сказали ранее, через websocket или longpolling.
Результат заносить в БД, отдавать другим запросом.
Если брокер не поддерживает сохранение состояния, то дублируйте результат(pending,progress,sucess,fail) в БД из скрипта обработчика.