Медленные запросы Django: соедините операторы фильтра Django с медленными запросами в журналах базы данных - PullRequest
0 голосов
/ 07 февраля 2012

Если вы пытаетесь диагностировать медленные запросы в своем бэкэнде mysql и используете внешний интерфейс Django, как связать медленные запросы, сообщаемые бэкэндом, с определенными наборами запросов в коде внешнего интерфейса Django?

Ответы [ 2 ]

1 голос
/ 07 февраля 2012

Если вы установите django-devserver , он покажет вам выполняющиеся запросы и время, которое они занимают в вашей оболочке при использовании runserver.

Другой альтернативой является django-debug-toolbar , которая сделает то же самое при наложении боковой панели на вашем сайте.

В любом случае вам необходимо протестировать его в своей среде разработки. Тем не менее, ни один из них не решает проблему точного определения вас непосредственно на оскорбительные запросы; они работают на основе запроса. В результате вам придется немного подумать о том, какие из ваших представлений наиболее интенсивно используют базу данных и / или имеют дело с исключительно большими объемами данных, но выбирая наиболее вероятные представления и проверяя время для поиска. Запросы, выполняемые на этих страницах, должны быть в состоянии определить, какие именно запросы являются худшими.

1 голос
/ 07 февраля 2012

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

См. этот ответ о том, как получить доступ к фактическому запросу для данного набора запросов.

...