Rails视图呈现奇怪的缓慢

时间:2014-04-08 04:00:45

标签: ruby-on-rails performance libv8

问题

如果资产发生了变化,我的rails应用程序突然开始服务初始请求和顺序请求大约60秒。

我尝试了什么

关于“rails,render,slow”有很多关于SO的答案,但是没有一个帮助,因为问题似乎在不同的领域。

然后我尝试将gem版本回滚到旧点,此问题不存在。没运气。我没有更新系统中的任何内容(rvm,homebrew),因此无法回滚。

然后我安装了ruby-prof profiler,看到rails一直在执行V8::C::String#Utf8Value,但我无法从中获取任何内容。

诊断信息

我使用OSX Mavericks。

服务器日志:

  

在2014-04-08 05:30:49 +0200开始获取127.0.0.1的“/”   由HomeController处理#index为HTML用户负载(0.3ms)SELECT“users”。*   FROM“users”WHERE“users”。“id”= 1 ORDER BY“users”。“id”ASC LIMIT 1   在布局/应用程序中呈现home / index.html.erb(64211.8ms)   完成200 OK,64248ms(浏览次数: 64218.0ms | ActiveRecord:2.1ms)

profiler log(水平滚动):

 %total   %self      total       self       wait      child            calls    Name
--------------------------------------------------------------------------------
                     61.042      0.000      0.000     61.042              2/2      V8::Conversion::Fundamental#to_ruby
  87.50%   0.00%     61.042      0.000      0.000     61.042                2      V8::Conversion::NativeString#to_ruby
                     61.042     61.042      0.000      0.000              2/2      V8::C::String#Utf8Value
--------------------------------------------------------------------------------
                     61.042     61.042      0.000      0.000              2/2      V8::Conversion::NativeString#to_ruby
  87.50%  87.50%     61.042     61.042      0.000      0.000                2      V8::C::String#Utf8Value
--------------------------------------------------------------------------------
                      8.528      0.000      0.000      8.528              4/4      Proc#call
  12.22%   0.00%      8.528      0.000      0.000      8.528                4      V8::Error::Try#try
                      8.528      0.000      0.000      8.528              4/4      <Module::V8::C>#TryCatch
--------------------------------------------------------------------------------

0 个答案:

没有答案