据说部署Django最佳方式是使用WSGI,为什么呢?
我们正在部署一个django应用程序,我在文档中发现推荐使用WSGI的方式来进行部署。
在部署之前,我想知道为什么推荐这种方式,而不是另外两种方法,也就是使用mod_python和fastcgi……
非常感谢。
3 个回答
0
我在任何生产环境的Django应用中都使用mod_wsgi。它速度快,稳定性好,而且配置起来非常灵活。
你也可以多了解一下FastCGI这个方法。Eric Florenzano刚刚写了一篇关于Django和FastCGI的精彩文章,适合Django新手阅读:http://djangoadvent.com/1.2/deploying-django-site-using-fastcgi/
5
我们试过 mod_python
。这个东西比较慢,而且配置起来也麻烦。它没有守护进程的功能。
我们没能把 fast_cgi
安装好,因为我们的 Apache、Red Hat 和 Python 的组合有问题。我也不太清楚具体哪里出错了,但就是没法正确安装。它不能把请求正确地发送给 Django,我们也没法找到问题所在。
我们第三次尝试了 mod_wsgi
。这个安装得很顺利。它有守护进程的选项,配置起来非常简单。它允许我们在不重启整个 Apache 的情况下,轻松重启 Django 应用。
15
wsgi
通常是更受欢迎的选择,因为它让你可以把框架和网络服务器分开考虑。比如,如果你明天想把服务器从 Apache 换成 nginx,使用 wsgi 的话,这个转换就非常简单;如果不使用 wsgi,那就没那么容易了。
此外,使用 wsgi 还可以让你添加一些和框架无关的中间件,这样你就不需要依赖于你选择的框架已经实现的所有功能了。