Таким образом, это работает так, что Cherokee управляет запущенным экземпляром uwsgi на заднем плане для вас. Что я заметил до сих пор, и я еще не закончил смотреть на это, так это то, что если вы закрываете Cherokee, он, похоже, также не завершает работу экземпляров uwsgi.
Попробуйте это:
sudo service cherokee start
ps aux | grep uwsgi
# you should see nothing from this ps command
# now hit your web app
sudo service cherokee stop
ps aux | grep uwsgi
# you should see the instance of uwsgi that cherokee started
Таким образом, код вашего приложения фактически запускается через uwsgi, а Cherokee больше похож на прокси-сервер. Чтобы обновить код приложения, необходимо отправить сигнал HUP в uwsgi, а не в Cherkee.
sudo killall -HUP uwsgi
Это должно привести к обновлению uwsgi ваших изменений в приложениях независимо от их чероки.