Хорошо, ребята, я думаю, это был один из случаев, когда мне приходилось помогать себе, и я на самом деле очень рад, что помог.Я не использовал ни одного из инструментов, с которыми я связан.
Я вошел на свой сервер через.ssh и запустили две команды в двух окнах: top и tail -f /var/www/mysite.com/log/production.log.
Я посмотрел в файле журнала в реальном времени и заметил запрос страницы, который занялдолгое время загрузки - страница, на которой пользователь может показывать свои изображения, где каждый пользователь идентифицируется по имени через.acts_as_taggable_on.Это единственный запрос занял 6 секунд.
И он продолжал появляться.Я думаю, что видел это 6 или 7 раз, и я решил исследовать это далее.Это всегда был один и тот же идентификатор пользователя, поэтому я решил найти пользователя.Оказывается, у пользователя было пустое имя, "", и помеченные изображения найдены по
Asset.tagged_with(@user.name, :on => "users")
. Теперь в моем приложении есть десятки тысяч активов, и Asset.tagged_with ("",: on => "users") вернет ВСЕХ из них, что приведет к поглощению моей памяти.
Теперь я обработал случай, когда у пользователя есть пустое имя, и оно требуется для всех новых пользователей.,Хотя никто не помог, я все еще чувствую некоторую благодарность за стекопоток, потому что иногда это так же просто, как задавать вопросы для решения проблемы.