Python + Tornado Перезапуск после редактирования файлов
Я только начинаю изучать Python + Tornado для своих веб-серверов. Каждый раз, когда я изменяю код на своих сценариях или шаблонах python, я должен остановить его в своем терминале (CTRL + C) и перезапустить его (python server.py), и я хочу более эффективный способ сделать это, чтобы после изменения кода в некоторые файлы автоматически перезагружаются сервером.
Ранее я работал с NodeJS и использовал супервизор для этого.
Также есть способ перезагрузить мою вкладку в Google Chrome, чтобы я мог видеть изменения без перезагрузки (F5)
В настоящее время я использую Ubuntu 11.10 и Sublime Text 2 и используя CTRL + B на возвышенном тексте, но если сервер уже запущен, генерируется ошибка, потому что адрес и порт используются. Для этого есть исправление без изменения порта.
Спасибо.
Ответы
Ответ 1
Если вы ищете автоматическую перезагрузку .py файлов во время разработки. В tornado.web.Application()
поставьте debug=True
после ваших обработчиков.
Я не думаю, что вы должны делать это в рабочей среде, потому что такая реализация обычно использует фоновый поток для активного сканирования файлов для изменений, что может замедлить ваше приложение.
Ответ 2
Вам нужно включить autoreload
в:
tornado.autoreload.start()
tornado.autoreload.watch('myfile')
Полный пример в https://gist.github.com/renaud/10356841