Приложение My Rails прекрасно работает в режиме разработки (без кэширования), но в производственной среде сложно загрузить представление: show для основной модели. Журнал показывает только SQL-запросы, которые в сумме составляют около 45 мс, но фактическое время рендеринга составляет около 15 секунд. Я использую act_as_ferret и Paperclip, но Paperclip только вызывает цикл after_save без каких-либо действий. В данный момент в сети всего 1 или 2 пользователя, поэтому я не думаю, что у меня есть резервная очередь, но я действительно не могу сузить то, что перегружает сайт. Что я могу сделать, чтобы более точно измерить функции на стороне сервера и посмотреть, что резервирует время загрузки?
Вещи, вызываемые в: show view
- около 12 списков HABTM (типы тегов, категорий и т. Д.)
- Похожее видео найдено с act_as_ferret
- HABTM комментариев к видео
И это действительно так. И как мне назвать HABTM лучшей практикой Rails? Прямо сейчас я делаю что-то вроде:
<%= @video.tags.map {|t| link_to t.name, path} %>
<%= @video.categories.map {|c| link_to c.name, path} %>
#etc....
Я почти уверен, что есть лучший способ сделать это, и я открыт для предложения