Почему django выполняет дополнительные запросы (сессия, auth, время)
Я пытаюсь оптимизировать свои запросы к django, используя django-debug-toolbar
Мой фактический запрос - это простой геттер, как вы можете видеть в качестве 4-го в этом списке:
QUERY = 'SELECT SYSDATETIME()' - PARAMS = () 15.89
QUERY = 'SELECT TOP 21 [django_session].[session_key], [django_session].[session_data], [django_session].[expire_date] FROM [django_session] WHERE ([django_session].[expire_date] > %s AND [django_session].[session_key] = %s)' - PARAMS = (datetime.datetime(2021, 8, 21, 2, 24, 45, 234137), 'xx')
QUERY = 'SELECT TOP 21 [auth_user].[id], [auth_user].[password], [auth_user].[last_login], [auth_user].[is_superuser], [auth_user].[username], [auth_user].[first_name], [auth_user].[last_name], [auth_user].[email], [auth_user].[is_staff], [auth_user].[is_active], [auth_user].[date_joined] FROM [auth_user] WHERE [auth_user].[id] = %s' - PARAMS = (30,) 15.87
QUERY = 'SELECT [mm_asset_type].[id], [mm_asset_type].[name], [mm_asset_type].[description] FROM [mm_asset_type]' - PARAMS = ()
Однако, только для этого геттера требуется 50 мс из-за первых 3 запросов.
Отдельные затраты времени составляют:
- 15ms
- 16ms
- 15ms
- 8ms
Есть ли какая-то настройка, которую я могу использовать для оптимизации или удаления этих запросов?