Я разрабатываю приложение Ruby on Rails, которое запрашивает XML-каналы, считывает их и разбирает их на объекты, которые будут использоваться в представлениях. Поскольку запрос на подачу XML и последующее его получение из некоторых источников может занять несколько секунд, мне нужен способ разгрузить эти задачи от уровня моих приложений. Я не хочу, чтобы мои серверы приложений обрабатывали запрос более чем на несколько сотен миллисекунд. В настоящее время обслуживающие процессы приложения сидят и ждут, когда будут возвращены данные фида XML, чтобы они могли проанализировать их и завершить возврат пользовательского запроса. Я знаю о DelayedJobs, однако, учитывая, что результат этого действия должен быть возвращен пользователю в режиме реального времени, я не уверен, как перенести его в фоновую задачу и получить результат.
Если я перенесу эту задачу в фоновую задачу, как результат будет возвращен пользователю, загружающему страницу?