Rails中的长AJAX请求在Nginx和Passenger上返回`ERR_EMPTY_RESPONSE`

时间:2016-07-25 18:51:52

标签: jquery ruby-on-rails ajax nginx passenger

我有一个Rails 3应用程序启动一个AJAX请求,以获取一些带有一些昂贵的计算值的HTML部分。这会加快实际的页面加载速度,并允许在加载主页面后发生昂贵的部分加载。

这在大多数情况下都可以正常工作,需要5秒到45秒才能完成。 AJAX请求已完成,部分按预期填充到页面中。

但是,在一些拥有更多数据的大型帐户上,完成需要70或80秒。

开发中,这没问题。这需要一段时间,但是当它完成时,部分会被加载到页面上。

登台中,它本质上是具有最小基础架构的生产的克隆版本(没有HAProxy负载均衡器和Web和数据库的单个共享服务器),它可以正常工作。

生产中,请求未完成,而是返回err_empty_response。但是,对于数据较少的较小帐户,它确实可以正常工作。只有这些较大的帐户才会返回此错误。

我已经尝试确定问题所在,但似乎无法让它发挥作用。

我尝试了一些没有成功的事情:

  • 在nginx配置中增加keepalive_timeout
  • 在内存限制的情况下扩展服务器。

任何建议都会受到欢迎。

提前致谢。

0 个答案:

没有答案