Python | Django 为什么要使用 WSGI?

在这里插入图片描述

概述

了解Django 框架的人都知道一件事情,要将Web Application 部署的服务器上,就需要gunicorn 或者 uwsgi 等工具。这些工具的背后就是WSGI。

什么是WSGI

WSGI 是 Web Server Gateway Interface 的缩写,是一种网关协议。WSGI 定义了 web server 跟 python web application 之间沟通的规范。

为什么要用 WSGI?

在传统的 web server 中,像是 Nginx, Apache 是无法执行 Python Web Application 的。所以要想运行Python版本的 Web Application,就要用到 WSGI Server。

从下图中,我们以 Django 搭配 gunicorn 为例,在 Django 中的 wsgi.py 文件里定义了一个 application 的变量,以使 gunicorn 能够调用 Django 程序。

在这里插入图片描述
WSGI 提供的是Web server 与 python web application 之间的访问规范,只要符合这项规范的任何一个 Web server,都能与符合规范的 Application 进行串接。这样就给开发人员提供了非常大的弹性,不用在担心 Web server 跟 Web Application 之间不相容。

另一方面也能将 Web Server 与 Web Application 在开发上切割开来。因为开发 Web server 的人需要去处理多个请求进到 server 状况,但是 Web Application(framework) 的开发者,就不需要处理这种事情,可以更专注在 framework 及业务逻辑的开发。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

孟华328

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值