Rails отображает странную медлительность

Эта проблема

Внезапно мое приложение rails начало занимать около 60 секунд, обслуживая первоначальный запрос и последовательные запросы, если что-то изменилось в активах.

Что я попробовал

На SO есть много ответов относительно "rails, render, slow", но ни один из них не помог, потому что проблема, кажется, в другой области.

Затем я попытался откатить версии джема до более старой точки, где этой проблемы не было. Неудачно. Я ничего не обновлял в системе (rvm, homebrew), поэтому откатывать было нечего.

Затем я установил ruby-prof профилировщик и увидел, что рельсы потратили все время на выполнение V8::C::String#Utf8Value, но я ничего не могу получить от этого.

Диагностическая информация

Я использую OSX Mavericks.

журнал сервера:

Запуск GET "/" для 127.0.0.1 в 2014-04-08 05:30:49 +0200 Обработка HomeController#index как пользовательская нагрузка HTML (0,3 мс) ВЫБЕРИТЕ "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)

Журнал профилировщика (прокрутка по горизонтали):

 %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 ответов

Другие вопросы по тегам