Nginx、uWSGI、Flask之间的关系

总体来说:客户端从发送一个HTTP请求到Flask处理请求,分别经过了web服务层,WSGI层,web框架层,这三个层次。不同的层次期作用也不同,下面简要介绍个层的作用。

web服务器,web框架,与WSGI的三层关系

1、Web服务器层

对于传统的客户端 - 服务器架构,其请求的处理过程是,客户端向服务器发送请求,服务器接收请求并处理请求,然后给客户端返回响应。在这个过程中,服务器的作用是:

  • 接收请求
  • 处理请求
  • 返回响应

Web服务器是一类特殊的服务器,其作用主要是接收HTTP请求并返回响应。提起Web服务器大家都不会陌生,常见的Web服务器有Nginx,Apache,IIS等。在上图的三层结构中,Web服务器是最先接收用户请求的,并将响应结果返回给用户。

2、Web框架

Web框架的作用主要是方便我们开发Web应用程序,HTTP请求的动态数据就是由Web框架层来提供的。常见的Web框架有Flask,Django等,我们以Flask框架为例,展示Web框架的作用:

from flask import Flask
app = Flask(__name__)
@app.route('/hello')
def hello_word():
    return 'Hello World!'

if __name__ == '__main__':
    app.run(host='0.0.0.0', port=5000)
原文地址:https://www.cnblogs.com/xushuhai/p/9089958.html