Нужно ли перезапускать uWSGI при изменении кода Django?

Я работаю над Django webapp, который работает под nginx и uWSGI. Когда я развертываю новый код Django (например, settings.py), нужно ли перезапускать uWSGI? Если так, то почему?

фон: у меня был сценарий, где я обновил settings.py и какой-то другой код и развернул его. Я не видел изменений в поведении webapp, пока не перезапустил uWSGI.

1 ответов


да, вам нужно перезапустить процесс uWSGI.

Python сохраняет скомпилированный код в памяти, поэтому он не будет перечитываться до перезапуска процесса. Сервер разработки django (manage.py runserver) активно отслеживает изменения файлов, но это не произойдет по умолчанию с другими серверами. Если вы хотите включить автоматическую перезагрузку в uWSGI, то touch-перезагрузка и py-auto-перезагрузка аргументы uWSGI могут помочь.