2012-04-01 2 views
10

Я только начинаю изучать Python + Tornado для своих веб-серверов. Каждый раз, когда я изменяю код на своих сценариях или шаблонах python, я должен остановить его в своем терминале (CTRL + C) и перезапустить его (python server.py), и я хочу более эффективный способ сделать это, чтобы после изменения кода в некоторые файлы автоматически перезагружаются.Python + Tornado Перезапуск после редактирования файлов

Раньше я работал с NodeJS и использовал диспетчер для этого.

Также есть способ, чтобы перезагрузить мой счет в Google Chrome, чтобы я мог видеть изменения без перезагрузки (F5)

В настоящее время я использую Ubuntu 11.10 и Sublime Text 2 и с помощью CTRL + B на возвышенный текст , но если сервер уже запущен, генерируется ошибка, так как адрес и порт используются. Для этого есть исправление без изменения порта.

Спасибо.

ответ

10

Если вы ищете автоматическую перезагрузку .py файлов во время разработки. В вашем tornado.web.Application() положите debug=True после ваших обработчиков.

Я не думаю, что вы должны сделать это в производственной среде, потому что такая реализация обычно использует фоновый поток для активного сканирования файлов для изменений, что может замедлить ваше приложение.

+0

Прекрасно работает, спасибо! – danielfrg

+1

На самом деле я считаю, что торнадо не использует отдельный поток для этого, но вместо этого регистрирует обработчики на своем IOLoop. Тем не менее он несет накладные расходы. Кроме того, отладочные сообщения не должны использоваться в производстве в любом случае. –

+0

Теперь можно просто перейти в «autoreload = True». Здесь есть страница документации: http://www.tornadoweb.org/en/stable/autoreload.html – Ross

 Смежные вопросы

  • Нет связанных вопросов^_^