Django:部署时需要重启Apache吗?

1 投票
3 回答
2107 浏览
提问于 2025-04-15 13:43

我刚注意到一个让人烦恼的事情:Django需要重启服务器或者使用CGI才能正常工作。如果你没有权限去重启Apache服务器,那重启服务器这个选项就不太可行。而使用CGI的话,听说会影响性能,总的来说,使用CGI让我感觉不太舒服。

我最近还看到一个演讲,标题是“我为什么讨厌Django”。虽然我并不完全同意演讲者(一个Flickr的员工)说的很多观点,但重启服务器这件事确实听起来很烦人。

我想知道你们在这方面的经验。是继续用Django并把它当作CGI来用,还是选择其他的Python框架呢?CGI真的那么糟糕吗?我需要担心这个问题吗,还是说它在性能和扩展性上是个可行的选择?

3 个回答

0

我通常不重启服务器,而是强制重新加载配置。在一台Ubuntu Hardy服务器上,

sudo /etc/init.d/apache2 force-reload

这样几乎是立刻就完成了。

0

关于如何在使用Apache/mod_wsgi时处理源代码重新加载的问题,可以参考以下链接:

http://code.google.com/p/modwsgi/wiki/ReloadingSourceCode

http://blog.dscpl.com.au/2008/12/using-modwsgi-when-developing-django.html

http://blog.dscpl.com.au/2009/02/source-code-reloading-with-modwsgi-on.html

文档在阅读时会更有用哦。;-)

6

使用WSGI标准,通过mod_wsgi来实现。你不需要重启Apache,只需更新一下.wsgi文件的修改时间就可以了。

撰写回答