uwsgi协议比http协议更快吗?

Vip*_*til 12 sockets django wsgi nginx uwsgi

我正在尝试各种设置来部署django应用程序.我的第一选择是使用一个简单的apache服务器和mod_wsgi,我之前已经实现了私有用途.由于目前的部署是供公众使用,我正在寻找各种选择.根据在线提供的信息,似乎有nginx用于提供静态内容以及动态内容服务器的反向代理.现在根据我之前对Apache的了解,我正在考虑将其用于动态内容.但后来我遇到了Gunicorn和后来的uWSGI.目前我正在实施uWSGI.我看到它允许多种协议,包括http.

使用一种协议优于另一种协议有什么好处.我理解,鉴于我需要在多个服务器上扩展应用程序,这意味着我不能使用Unix套接字,这似乎是在一些教程中推荐的.所以其他选择是使用uwsgi或http的TCP套接字.他们有很多理论上的差异.我不知道uwsgi协议的细节,并想知道,如果通过http协议使用它会使事情变得更快?

Gra*_*ton 16

最终,您的瓶颈不会出现在请求的特定路由机制中,除非您真的搞砸了配置.因此可以说浪费时间过于专注于在该级别上做出决策.

在PyCon上观看我的演讲,了解瓶颈真正发生的背景.

http://lanyrd.com/2012/pycon/spcdg/

  • 区别在于,在HTTP中,收件人必须解析请求标头字段分隔符和行结束标记.在uwsgi中,二进制长度字节包含在数据中,因此接收者已经知道字段的长度是什么,而不必解析它.所以你可以使用uwsgi节省一点时间,但你真的在分裂头发.服务器端软件的设计将变得更加重要.用于处理它的算法中的草率编码将快速消除任何保存.即使是uWSGI作者也会承认,在那个级别上,差异非常小. (4认同)
  • 链接已消失,但我发现了以下内容:对话:1. [youtube.com-PyCon Australia 2012-Web服务器瓶颈和性能调整](https://www.youtube.com/watch?v=eOkxLCCbU9w)2. [ youtube.com-PyCon Us 2012-Web服务器瓶颈和性能调整](https://www.youtube.com/watch?v=Bt2HStzaBzE)幻灯片:[slideshare.net-PyCon Us 2012](https:// www。 slideshare.net/GrahamDumpleton/pycon-us-2012-web-server-bottlenecks-and-performance-tuning) (3认同)