0

Я пытаюсь диагностировать проблему производительности в Rails 4 и не могу понять, что происходит. Вот сроки, что я вижу на моем сервере:Общие сведения о показателях времени выполнения Rails

Завершено 200 OK в 2816ms (Просмотров: 644.1ms | ActiveRecord: 162.0ms | Solr: 0.0ms)

Я (в основном), удовлетворенный моим временем просмотров и временем ActiveRecord, но не понимаю, почему время Completed (2816ms) настолько велико.

Что представляет собой это время? И есть ли способ уменьшить это время?

+0

Это может зависеть от ваших драгоценных камней: например, я использую мини-профайлер в режиме разработки для отслеживания SQL-запросов и визуализации вызовов. Этот драгоценный камень добавляет много миллисекунд во время завершения. Если вы хотите проверить производительность своего приложения, убедитесь, что вы используете режим производства (с 'rake assets: precompile' перед запуском в режиме производства) – MrYoshiji

+0

@MrYoshiji Я получаю эти результаты в промежуточной (почти производственной) среде, и это для api, поэтому представления представляют собой json-рендеринг. Я бы хотел использовать мини-профайлер, если бы мог! : D –

ответ

1

Что вы показываете, так это то, что более 2/3 вашего времени обработки запроса не включены в модель/представление. То, что осталось? Другой код работает в вашем контроллере и обрабатывает жизненный цикл обработки.

Лучший способ профилировать это установить NewRelic RPM жемчужину и запустить локальный профилировщика:

Добавить камень в ваш Gemfile:

gem 'newrelic_rpm' 

Включение локального профилирование в разработке конфигурации/NewRelic .yml:

development: 
    <<: *default_settings 
    monitor_mode: false 
    developer_mode: true 

Выполнить ваш запрос 2-3 раза, чтобы прогреть ваше приложение Rails, а затем посетить местное NewRelic приложение для просмотра следов и отследить, что происходит:

http://localhost:3000/newrelic 
+0

Спасибо за продуманный ответ! Я использую newrelic, поэтому я попробую локальное профилирование. –

+0

Настройка производительности - моя страсть. Если у вас возникли проблемы с интерпретацией того, что происходит, не стесняйтесь оставить мне строку: [email protected] – Winfield

Смежные вопросы