Отладка 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, функции менее тяжелые, чем представления. Это позволяет быстро решить проблему.