Ruby on rails Rails应用程序死了。没有堆栈跟踪,只是遇到了500个错误

Ruby on rails Rails应用程序死了。没有堆栈跟踪,只是遇到了500个错误,ruby-on-rails,postgresql,Ruby On Rails,Postgresql,我的应用程序在activity_set partial中为我需要的每一行加载多个partial。大约需要30秒,我的应用程序抛出一个“很抱歉,出了点问题。”500个错误,我猜,但是unicorn.log没有显示任何内容,我的production.log也没有显示任何内容。我第一次失明了 一、 [2014-05-22T01:38:19.938799 35; 22221]信息--:呈现注册/u活动_row.html.erb(4.6ms) 一、 [2014-05-22T01:38:20.347306#

我的应用程序在activity_set partial中为我需要的每一行加载多个partial。大约需要30秒,我的应用程序抛出一个“很抱歉,出了点问题。”500个错误,我猜,但是unicorn.log没有显示任何内容,我的production.log也没有显示任何内容。我第一次失明了

一、 [2014-05-22T01:38:19.938799 35; 22221]信息--:呈现注册/u活动_row.html.erb(4.6ms) 一、 [2014-05-22T01:38:20.347306#22221]信息--:呈现注册/活动行.html.erb(4.5ms) 一、 [2014-05-22T01:38:20.622309#22221]信息--:呈现注册/u活动_row.html.erb(5.4ms) 一、 [2014-05-22T01:38:20.674423#22221]信息--:呈现注册/u活动_row.html.erb(5.2ms)
一、 [2014-05-22T01:38:21.073015#22221]信息--:呈现注册/_activity_set.html.erb(29767.5ms)

虽然我没有找到它为什么会用我的CPU运行,但我最终重构了代码。我在一次迭代中迭代。对10张唱片罚款,但对50张唱片不太罚款。50 x 50不太好看。肯定在rails中遇到了限制。谢谢你帮我。回到折叠我去…

你能根据这个日志输出添加相关的代码片段吗,即操作和包括这个部分吗?这个托管在哪里,“很长时间”是多长?如果是Heroku并且>30秒,那么您刚好达到Heroku的超时。您需要对此进行优化以节省时间。从发布的日志来看,它似乎确实达到了30秒的超时时间,呈现_activity_set.html.erb花费了29767.5毫秒。如果您有大量的元素要显示,请考虑使用分页,并确保没有N+ 1查询。我将提供更多关于服务器的信息。当页面加载时,CPU达到100%。我们添加了第二个cpu,负载增加到50%,给出了相同的场景。所以现在我想知道如何告诉我的VP使用两个处理器而不是一个…@fivedigit我显示的行是一个必须显示的选项表中的复杂行。我无法对行进行分页。