Запрос среды разработки на некоторых моделях очень медленный - PullRequest
0 голосов
/ 19 октября 2010

Я ломаю голову над этой проблемой последние несколько недель.

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

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

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)

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

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

Спасибо.

РЕДАКТИРОВАТЬ: Я нашел там более точную проблему.В моделях User и Site у меня есть эта ссылка, которая замедляет работу моей среды разработки.

include ActionController::UrlWriter

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

Ответы [ 2 ]

2 голосов
/ 19 октября 2010

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

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

1 голос
/ 19 октября 2010

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...