Встречается на собеседованиях • сегодня
Как профилируешь запросы в базе Django
Для профилирования запросов в Django можно использовать несколько инструментов:
- django-debug-toolbar - самый популярный вариант. Показывает SQL-запросы, время выполнения и другие метрики:
python
# settings.py
INSTALLED_APPS += ['debug_toolbar']
MIDDLEWARE += ['debug_toolbar.middleware.DebugToolbarMiddleware']
INTERNAL_IPS = ['127.0.0.1']- connection.queries - встроенный способ для просмотра выполненных запросов:
python
from django.db import connection
# После выполнения запросов
print(len(connection.queries)) # Количество запросов
for q in connection.queries:
print(q['sql'], q['time'])-
django-silk - более продвинутый профилировщик, который сохраняет историю запросов и позволяет анализировать их.
-
explain() - для анализа конкретного запроса:
python
queryset.explain() # Покажет план выполнения запросаДля продакшена можно использовать Sentry или New Relic, которые также показывают медленные запросы.

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы