Уменьшить время, затрачиваемое на django, с 31353,191 мс - PullRequest
0 голосов
/ 15 октября 2018

Согласно django-debug-toolbar время моего процессора составляет около 31000 мс (в среднем).Это верно как для моих собственных страниц, так и для администратора.Вот разбивка при загрузке http://127.0.0.1:8000/admin/:

Использование ресурсов

User CPU time          500.219 msec
System CPU time        57.526 msec
Total CPU time         557.745 msec
Elapsed time           30236.380 msec
Context switches       11 voluntary, 1345 involuntary

Время браузера (атрибут синхронизации / Миллисекунды с начала навигации (+ длина))

domainLookup            2 (+0)
connect                 2 (+0)
request                 7 (+30259)
response                30263 (+3)
domLoading              30279 (+1737)
domInteractive          31154
domContentLoadedEvent   31155 (+127)
loadEvent               32016 (+10) 

Насколько я понимаю, шаг «запроса» [7 (+30259)] является самым большим узким местом здесь.Но что это говорит мне?Панель запросов просто показывает некоторые переменные, а не данные GET или POST.

Этот же код отлично работает на хосте pythonanywhere, локально я использую MacBook Air (i5, 1,3 ГГц, 8 ГБ ОЗУ).Производительность не всегда была такой плохой.IIRC это случилось "за ночь".Однажды я запустил сервер разработки, и он был медленным.Ничего не изменилось в коде или базе данных.

Правильно ли предположить, что это может быть проблема с моей локальной машиной?

РЕДАКТИРОВАТЬ: я пытался запустить ./manage.py runserver --noreload, но производительностьне улучшилосьКроме того, запуск dev-сервера (с использованием ./manage.py runserver) также занимает около 40 секунд, а доступ к БД с помощью postico занимает около 1 минуты.Запуск dev-sever при комментировании базы данных из настроек django делает время загрузки нормальным.

1 Ответ

0 голосов
/ 15 октября 2018

Решил это. Этот пост указал мне правильное направление.По сути, я в итоге "переустановил" мой хост-файл согласно этой записи.Мой файл хоста теперь выглядит следующим образом:

127.0.0.1 localhost
255.255.255.255 broadcasthost
::1 localhost
fe80::1%lo0 localhost

Однако, в первую очередь, это не объясняет, что вызвало внезапную проблему с «ночевкой».Мое предположение: переименовано имя хоста.Пару дней назад мое имя хоста звучало примерно так: android- (похоже на this ), что, очевидно, было вызвано тем, что я использовал инструмент обмена файлами Android.Закончилось переименование моего имени хоста в мое имя пользователя (см. Инструкции ниже).

Выполните следующие задачи, чтобы изменить имя хоста рабочей станции с помощью команды scutil.Откройте терминал.Введите следующую команду, чтобы изменить основное имя хоста вашего Mac: Это ваше полное имя хоста, например, myMac.domain.com sudo scutil --set HostName Введите следующую команду, чтобы изменить Bonjour имя хоста вашего Mac: Это имяможно использовать в локальной сети, например, myMac.local.sudo scutil --set LocalHostName Необязательно: Если вы также хотите изменить имя компьютера, введите следующую команду: Это удобное имя компьютера, которое вы видите в Finder, например, myMac.sudo scutil --set ComputerName Чтобы очистить кэш DNS, введите: dscacheutil -flushcache Перезагрузите ваш Mac.

с здесь

Не проверялось «переименование»Теория имени хоста, хотя.

...