Ускорение решения проблемы с ответом Django REST API
У нас есть проект на gunicorn, django и nginx. Есть таблица в postgres на 600000 записей с большим количеством char полей (около 7500). Эта проблема решается триггерами и searchvector. Также есть api (rest) и 1 конечная точка. На этой точке запрос к базе данных занимает около 0.3 с. Это нормально для нас. Но получение ответа занимает около 2 минут.Пока мы ждем ответа один из процессов (они состоят из 8 ядер) занимает около 100%.
CPU Время процессора пользователя 201678.567 мс Системное процессорное время 224,307 мс Общее процессорное время 201902.874 мс общее время 202161.019 мс
SQL 385 мс
Что мы можем сделать, чтобы ускорить время ответа?
Я попытался изменить настройки gunicorn, но это не помогло. Затем я попробовал запустить проект с помощью ./manage.py runserver на неиспользуемом порту и отправить запрос к конечной точке и получил тот же результат. Я думаю, что проблема с видом REST API django. Сейчас Django работает с asgi, gunicorn и nginx.