Я пытаюсь обнаружить причину задержек при запуске Django 1.8, особенно, но не только при запуске в отладчике (WingIDE 5 и 6 в моем случае).Устранение неполадок при запуске Django 1.8
Минимальный тестовый пример: пример «опроса» в Django 1.8, выполненный только до первой точки, где работает «manage.py runningerver». Все настройки по умолчанию, используя SQLite. Python 3.5.2 с Django 1.8.14, в новом помещении.
Из командной строки на Linux (Mint 18) и Windows (7-64) это может занять до 2 секунд, чтобы добраться до сообщения «Запустить сервер разработки». Но в Windows это иногда занимает 10+ секунд. И в отладчике на обеих машинах это может занять 40 секунд.
Одна конкретная проблема: поместив операторы печати в начало и конец django/__init__.py setup()
, я отмечаю, что эта функция вызывается дважды перед сообщением «Starting ...» и снова после этого сообщения; первые два раза вносят половину задержки каждый. Это говорит о том, что django запускается три раза. В чем цель этого, или это указывает на проблему?
(Я обнаружил, что я мог бы избавиться от одного из первых двух запусков() с помощью параметра runerver --noreload. Но почему это происходит в первую очередь? И все же есть вызов startup() после сообщение «Starting ...».)
Подводя итог вопросу: - Какие-либо сведения о том, что может быть причиной задержки? - Почему django нужно запускать три раза? (Или дважды, даже с --noreload).
Если у вас такая же проблема, оставьте свой python3.5.2 до python3.4.4 и он будет работать нормально. И затем перестройте свой env. – sebb
@sebb Приятно не чувствовать себя одиноким :-). Вы знаете, что изменилось с 3.4.4 до 3.5.2, чтобы вызвать это? Я верю, что внесение этих изменений заставило проблему уйти за вас. Но слишком легко для такого изменения исправить что-то периферийное для версии Python как таковое. – gwideman
Насколько я знаю, существует проблема с python3.5, django и mint. К несчастью, я не знаю, в чем проблема. У коллеги также была та же проблема, он сказал, чтобы он отказался от питона и всего рабочего. – sebb