Tornado не перезапускается корректно в супервизоре

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

#!/usr/bin/env bash
some_work
more_work
python /usr/share/theapp/theapp.py

Я использую супервизор для управления этим маленьким скриптом. Запуск работает нормально(sudo supervisorctl start theapp.sh), но когда я хочу перезапустить, подпроцесс python не завершается и зависает, занимая порт и предотвращая повторный запуск. Я пытался добавить ловушки, чтобы убедиться, что код Python действительно останавливается, когда скрипт останавливается супервизором, но это не сработало. Я попытался отключить торнадо для сервера wsgi gevent и столкнулся с той же проблемой. Как я должен делать этот небольшой скрипт?

7
задан Martijn Pieters 24 October 2012 в 13:47
поделиться