Отладка Pycharm Django очень медленная
У меня есть сайт с умеренным размером, но PyCharm занимает около 30 секунд, чтобы запустить Runserver и быть готовым к запуску приложения. Если я запустил приложение вместо "Отладки", запуск займет всего около 3 секунд.
Что я могу сделать, чтобы ускорить цикл изменения кода и отладки.
Я использую достойный MBP с 16 ГБ ОЗУ. Поэтому аппаратное обеспечение не является проблемой.
Я исключил/медиафайлы из проекта.
У меня нет другого большого количества файлов, которые могут вызвать проблемы с индексацией
Я использую как Postgres, так и Mongo db.
Я запускаю Django 1.7 + дюжину пакетов вроде:
dj-static==0.0.6
django-annoying==0.8.1
django-appconf==1.0.1
django-bootstrap-form==3.2
django-bootstrap-pagination==1.5.1
django-compressor==1.5
django-extensions==1.5.5
django-filter==0.10.0
django-guardian==1.2.5
django-storages-redux==1.2.3
django-widget-tweaks==1.3
djangorestframework==3.1.2
django-jinja==1.4.1
Это отладочный вывод:
/Users/user1/.virtualenvs/env-test/bin/python "/Applications/PyCharm 4.5 EAP.app/Contents/helpers/pydev/pydevd.py" --multiproc --save-signatures --client 127.0.0.1 --port 64097 --file /Users/user1/gitroot/website1/manage.py runserver 0.0.0.0:8000 --verbosity 2
Connected to pydev debugger (build 141.1245)
pydev debugger: process 63926 is connecting
pydev debugger: process 63954 is connecting
Performing system checks...
System check identified no issues (0 silenced).
You have unapplied migrations; your app may not work properly until they are applied.
Run 'python manage.py migrate' to apply them.
June 03, 2015 - 09:08:52
Django version 1.7.7, using settings 'myproject.settings'
Starting development server at http://0.0.0.0:8000/
Quit the server with CONTROL-C.
UPDATE:
Поскольку этот пост Pycharm имеет возможность использовать Cython в качестве интерпретатора. Я думаю, что это кое-что улучшило. Я также перешел на использование Runserverplus, который, как мне кажется, работает быстрее.
Ответы
Ответ 1
Ну, отладчик просто медленный, и вы не можете его сделать. Просто не используйте отладчик, если он вам не нужен (т.е. Вы устраняете особенно неуловимую ошибку).
Я могу думать только об одном, что может ускорить отладчик PyCharm и отключить параметр "Собирать информацию о времени выполнения для определения кода" (находится в разделе "Файл" > "Настройки" > "Сборка, выполнение, развертывание" > "Питон" Отладчик).
Ответ 2
Для меня проблема, которая возникла, когда я вспомнил, что у меня было , позволило отладчику собирать информацию о типе.
-
Нажмите Ctrl-Shift-A
или выполните поиск в Settings > Build, Execution, Deployment > Python Debugger
для collect run-time types information for code insight
-
Снимите флажок и нажмите apply
-
Посмотрите, помогает ли это
Я запускаю Pycharm Community 5.0.1
Ответ 3
Я заметил, что исходный вывод отладки плаката не включает сообщение о цитоне. Я пришел на этот пост, потому что не мог понять, почему мой отладчик pycharm был настолько медленным, но позже я понял, что предложение ускорить отладчик прямо здесь, на моем отладочном выходе.
"<some-path-to-python>/python" "/Applications/PyCharm.app/Contents/helpers/pydev/setup_cython.py" build_ext --inplace
Я надеюсь, что люди это пробовали. Я предполагаю, что этот ответ для читателей, не являющихся выпускниками мира.
Ответ 4
Вам нужно поэкспериментировать с ними, взятыми из Блог Jetbrain:
- удалить все контрольные точки
- отключить исключения трассировки
- нет значений типа времени выполнения
Но также можно отключить проверку модели Django и т.д.
Я использовал патч для ускорения тестовых случаев, в 10 раз быстрее для запуска.
Итак, если вы делаете TDD, функции менее тяжелые, чем представления. Это позволяет быстро решить проблему.