2013-02-27 162 views
11

我正在使用運行在nginx和uWSGI下的Django web應用程序。當我部署新的Django代碼(例如settings.py)時,是否需要重新啓動uWSGI?如果是這樣,爲什麼?當Django代碼更改時是否需要重新啓動uWSGI?

背景:我有一個場景,我更新settings.py和一些其他代碼並部署它。在重新啓動uWSGI之前,我沒有看到web應用程序行爲的變化。

回答

14

是的,您需要重新啓動uWSGI進程。

Python將編譯後的代碼保存在內存中,因此在進程重新啓動之前它不會被重新讀取。 django開發服務器(manage.py runserver)主動監視文件以進行更改,但這不會在其他服務器上默認執行。如果要在uWSGI中啓用自動重新加載,則可以使用touch-reloadpy-auto-reload uWSGI參數。

相關問題