码迷,mamicode.com
首页 > 其他好文 > 详细

uWSGI、wsgi和nginx的区别和关系

时间:2020-03-28 17:47:58      阅读:68      评论:0      收藏:0      [点我收藏+]

标签:存在   art   响应   查询   技术   建立   服务   使用   log   

区分uWSGI和WSGI

在python web开发中,我们经常使用uwsgi配合nginx部署一个web框架,如Djangoflask。同时我们又会说,框架和web服务器之间要符合WSGI协议。那就来厘清一下这几个概念。

web服务器和web框架

在讲uWSGI和WSGI之前,先要弄清楚web开发的两大块,web服务器和web框架。
web服务器即用来接受客户端请求,建立连接,转发响应的程序。至于转发的内容是什么,交由web框架来处理,即处理这些业务逻辑。如查询数据库、生成实时信息等。Nginx就是一个web服务器,Django或flask就是web框架。

回到uWSGI和WSGI

那么如何实现uWSGI和WSGI的配合呢?如何做到任意一个web服务器,都能搭配任意一个框架呢?这就产生了WSGI协议。只要web服务器和web框架满足WSGI协议,它们就能相互搭配。所以WSGI只是一个协议,一个约定。而不是python的模块、框架等具体的功能。

而uWSGI,则是实现了WSGI协议的一个web服务器。即用来接受客户端请求,转发响应的程序。实际上,一个uWSGI的web服务器,再加上Django这样的web框架,就已经可以实现网站的功能了。那为什么还需要Nginx呢?

为什么需要Nginx

一个普通的个人网站,访问量不大的话,当然可以由uWSGI和Django构成。但是一旦访问量过大,客户端请求连接就要进行长时间的等待。这个时候就出来了分布式服务器,我们可以多来几台web服务器,都能处理请求。但是谁来分配客户端的请求连接和web服务器呢?Nginx就是这样一个管家的存在,由它来分配。这也就是由Nginx实现反向代理,即代理服务器。

技术图片

 

 

转发自:https://blog.csdn.net/CHENYAoo/article/details/83055108

 

uWSGI、wsgi和nginx的区别和关系

标签:存在   art   响应   查询   技术   建立   服务   使用   log   

原文地址:https://www.cnblogs.com/pfeiliu/p/12588355.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!