Django запрос работает медленно, но мой sql запрос работает быстро

У меня есть очень простой вие в моем django приложении

def notProjectsView(request):
context = {
    'projects':notProject.objects.all(),
    'title':'Not Projects | Dark White Studios'
}
return render(request, 'not-projects.html', context)

Когда я удалил контекст, он работает быстро, но это простой запрос и не должен быть таким длинным, в базе данных также нет большого количества записей, у нее 1 проект, и в шаблоне я запрашиваю project.notProjectImage.all, что может вызвать проблему n+1, но я удалил эту часть для проверки, и она все равно была медленной. Django debug toobar показывает ~50ms sql запрос, в то время как фактический запрос во вкладке времени составляет более 15 секунд

Итак, вы исключили запрос к БД как причину медленной работы. Вам нужно искать в другом месте. Медленно ли он работает, когда вы тестируете представление (используя тестовый фреймворк Django для GET html или POST данных и проверки html ответа)? Тогда вы исключили что-то, происходящее в браузере, например, неправильную работу скрипта или фреймворка. Остается Python-код проекта, или что-то не так с машиной, на которой он запущен. Что-то зацикливается гораздо чаще, чем следовало бы? Или на вашей машине разработчика не хватает оперативной памяти?

(О, и где находится БД? Разработчики обычно размещают ее на машине, на которой разрабатывают, но если она облачная, обратите внимание на производительность интернет-соединения и, возможно, самого сервиса).

Всегда работайте как Шерлок Холмс. "Как только вы исключите невозможное, все, что останется, независимо от степени невероятности, должно быть правдой"

BTW Недавно я отследил периодическую медлительность на моей машине разработчика до ошибки в графическом интерфейсе (Cinnamon/Linux). Конечно, это было последнее место, где я думал искать, пока не исключил абсолютно все остальное.

Вернуться на верх