随着没有发生在控制器之外render 'mypage'
和没有在除了HTML视图发生的事情(我注释掉在这两个地方的所有Ruby代码),它仍然接管5秒加载该页面:Rails开发模式呈现的观点非常缓慢
Completed 200 OK in 6258ms (Views: 5283.2ms | ActiveRecord: 14.6ms)
任何建议我如何可以改善这个或配置文件呢?我遇到的每个“解决方案”对我都没有影响。 Rails-dev-tweaks不会产生影响,更改资产调试标志不起作用;我实际上相信在请求资产之前,这一切都发生在之前。
更新 1450年5月7日
大家好 - 感谢您的答复。让我开始说我有缩小到资产;删除大约六个宝石和所有资产已经使页面加载时间降低到1.3秒,第一次加载,重新加载约150ms。太棒了。所以现在我的问题变成了如何正确配置像rails-dev-tweaks这样的gem来实现它;我似乎无法找到合适的配置。我们可能有一百个左右的资产 - 也许多一点。
要回答您的问题: 我不幸无法复制和粘贴视图;然而,足以说它是大约100行的HTML,10行的javascript,也许30行的HTML代码中有一些Ruby代码,但我评论了所有的Ruby。
我试图红宝石教授 - 没有给我任何东西
无需外部HTTP请求正在作出
有一个在ApplicationController中一个的before_filter,但即使他评论说出来没有做真正有用巨大的差异。
我在Mac OS X上开发10.8
我正在使用Rails 3.2。13
在没有资产在所有: 第一个页面负载:
Completed 200 OK in 3418ms (Views: 1414.9ms | ActiveRecord: 74.6ms)
刷新页面:
Completed 200 OK in 140ms (Views: 120.8ms | ActiveRecord: 2.8ms)
有趣的是,rails -v
需要4秒,以载荷:
[email protected] ± time rails -v
Rails 3.2.13
rails -v 4.10s user 0.24s system 92% cpu 4.679 total
更新2 1450年5月7日
New Relic的告诉我有什么,我相信采取过多的时间量是Rails的依赖(实际上是ActionPack的依赖),旅程本身:
Metric Timestamp (s) Duration (ms) Exclusive (ms)
DashboardController#show 0.001 2,652 1917
详细信息页面显示了我这个文件:
journey-1.0.4/lib/journey/router.rb
这行:
status, headers, body = route.app.call(env)
更新3 07年5月07日1509
进一步的调查显示,除了删除所有资产,删除所有gems将响应时间减少到可接受的〜150毫秒。把宝石放回800毫秒到1500毫秒;很明显,只有这些问题会引发问题。
如果有人认为他们可以挑选出其中的宝石是造成问题,我很高兴能发布的Gemfile
你能告诉我们你的看法? – Raindal 2013-05-07 14:45:03
你见过ruby-prof – juanpastas 2013-05-07 14:45:26
你是否在做任何外部HTTP请求? – Bitterzoet 2013-05-07 15:02:52