2010-10-19 2 views
0

Я исправляю эту проблему за последние несколько недель.Запрос на среду разработки на некоторых моделях очень медленный

В некоторых случаях моя локальная среда rails dev была настолько медленной. У меня есть рабочая среда, работающая так же быстро, как пуля на серверах. Но с тем же кодом моя среда для разработчиков работает так медленно, и я решил углубиться в это.

Я обнаружил, что проблема существует с двумя из моих основных моделей. Я мог бы идентифицировать его с помощью консоли в терминале.

Admin.last 
#(super quick, no records there) 
Club.last 
#(super quick, about 1400 records there) 

User.last 
#(super slow, about 3 seconds. but no records in there yet!!!!) 
Site.last 
#(super slow,about 3 seconds, too.. but this one has about 4000 records) 

Администратор и Пользователь имеет почти такое же количество и тип полей, кроме пользователя есть фото (с помощью Скрепка). Но скрепка отлично работает с Клубом.

Любая помощь будет оценена по достоинству.

Спасибо.

EDIT: Я нашел более точный номер там. В моделях пользователя и сайта у меня есть эта ссылка, которая замедляет работу моего dev env.

include ActionController::UrlWriter 

Я знаю, что мы не должны использовать URL-адрес на уровне модели. Но я должен использовать его. Теперь вопрос заключается в том, почему черт его медленнее использовать только на Dev env, а не на производстве? Спасибо.

ответ

2

В код среды разработки перезагружается после каждого запроса и не кэшируется. Это означает, что вы можете вносить изменения в код и просто обновлять страницу и не обновлять сервер.

В режиме производства маршруты/модели кэшируются, поскольку они менее вероятны для редактирования между запросами без перезапуска сервера.

+0

Спасибо. Это имеет смысл. Я только что удалил код, чтобы оставаться снаружи (прикладной контроллер) модели и избегать использования ссылки в моделях. И теперь он отлично работает. –

1

Это потому, что ваш URL-адрес перезагружается каждый раз. Так что сделайте несколько раз. В производстве нет перезагрузки вашего маршрута.

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