Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/67.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 在rails响应中发送一些初步数据_Ruby On Rails_Ruby On Rails 3_Heroku - Fatal编程技术网

Ruby on rails 在rails响应中发送一些初步数据

Ruby on rails 在rails响应中发送一些初步数据,ruby-on-rails,ruby-on-rails-3,heroku,Ruby On Rails,Ruby On Rails 3,Heroku,在Rails中,是否可以将响应分为两部分发送回浏览器? 第一部分不需要任何特定的内容(下面解释原因)。响应的第二部分是完整的正常响应,例如.html.erb格式的视图 我之所以希望这样做,是因为Heroku要求在30秒内将响应发送回浏览器,但是我的应用程序在120万条记录上执行几十次计算需要30秒以上的时间 Heroku文档指出,这在某些平台上是可能的(但在Rails上可能吗?) HTTP请求有一个30秒的初始窗口,其中web 流程必须返回响应数据(完成的响应或 一定数量的响应数据,以指示进程处

在Rails中,是否可以将响应分为两部分发送回浏览器? 第一部分不需要任何特定的内容(下面解释原因)。响应的第二部分是完整的正常响应,例如.html.erb格式的视图

我之所以希望这样做,是因为Heroku要求在30秒内将响应发送回浏览器,但是我的应用程序在120万条记录上执行几十次计算需要30秒以上的时间

Heroku文档指出,这在某些平台上是可能的(但在Rails上可能吗?)

HTTP请求有一个30秒的初始窗口,其中web 流程必须返回响应数据(完成的响应或 一定数量的响应数据,以指示进程处于活动状态)。 在最初30秒内不发送响应数据的进程 窗口将在其日志中看到H12错误

另外,我知道可能有比Rails更好的平台来构建这种数据密集型应用程序,但我正在Rails中构建它,因为这是我所知道的

谢谢

正确的方法是使用。如果你不想为额外的dyno付出代价,那么有一些可能对你有用

如果您只需要一起破解一些东西,那么这个工具应该可以工作。你应该能够每30秒写一个空格,直到你的工作完成。请记住,您需要一种方法来中断长时间运行的任务以发送响应。这可能意味着一个支持线程的Ruby版本


如果您所做的只是从数据库中读取大量记录,那么您可以。

似乎是Heroku的一个限制。你研究过流媒体吗?感谢您提供指向流式API的指针。我以前在Heroku上使用过背景作业,但从来没有使用过在完成任务时为浏览器呈现视图的背景作业。这可能吗?通常您会使用重复的ajax请求来检查状态,然后在完成时重定向。这可能有助于: