在生产中使用nginx+Apache+mod_wsgi和nginx+uWSGI(vurtualenv)的优缺点如下:
第一种方案的优点在于,mod_wsgi自2007年以来一直在开发,并且有更稳定的版本和易于管理。
第二种方案的优点是性能更高(参见 Python WSGI服务器基准测试),可以在虚拟环境中使用更安全的uWSGI服务器。
第二种方案的缺点是仍然没有主要版本,需要创建一些控制脚本来启动每个虚拟主机的uWSGI服务器(或使用supervisor)。
您对此有何看法?
在生产中使用nginx+Apache+mod_wsgi和nginx+uWSGI(vurtualenv)的优缺点如下:
第一种方案的优点在于,mod_wsgi自2007年以来一直在开发,并且有更稳定的版本和易于管理。
第二种方案的优点是性能更高(参见 Python WSGI服务器基准测试),可以在虚拟环境中使用更安全的uWSGI服务器。
第二种方案的缺点是仍然没有主要版本,需要创建一些控制脚本来启动每个虚拟主机的uWSGI服务器(或使用supervisor)。
您对此有何看法?
当您在最流行的WSGI服务器上运行典型的大型Python Web应用程序时,性能差异实际上并不大,通常没有什么值得激动的。您引用的“Hello world”基准测试非常误导人,因为它们测试了一个非常狭窄的用例,而且使用的配置通常是不可比较的。您应该考虑观看我的PyCon演讲,其中讨论了Web服务器和Web应用程序中的瓶颈。
http://pyvideo.org/video/703/web-server-bottlenecks-and-performance-tuning
鉴于WSGI服务器通常不是问题所在,您只需选择您认为最容易管理且具有您认为需要的功能的服务器。然后使用该选择的基准测试和监视来确定如何设置它以使其针对您特定的Web应用程序性能最佳。即使这样,任何性能提升或用户满意度的提高通常也不会来自这样的调整。