1. Django,Nginx 和 Gunicorn 的关系

1. Django,Nginx 和 Gunicorn 的关系,第1张

在杜赛的博客中,对Django+Nginx+Gunicorn这三兄弟的描述是这样的:

如果用餐馆来做比喻的话,Nginx 就是迎宾**,客人如果点了酒水,迎宾**自己就帮忙拿了;而 Gunicorn 是传菜员,Django 是厨师,他两一起满足客人对现炒美食的需求。

这个比喻具体是在说什么呢?

首先,我们要分清楚 Web应用 Web服务器 这两个概念。Django开发出来的程序是Web应用,它本身不能起到监听用户请求并响应这种 “收发员” 的功能。监听用户请求并响应是 Web服务器 的职责。

Nginx就是一个 Web服务器 。即使没有web应用运行,只有一大堆 html 静态页面,我们也可以通过配置路由和返回的页面来使用Nginx搞出一个静态网站。

Django开发的Web应用本身是没有和客户端(浏览器)交互的功能的。我们在本地能够运行它是只是因为Django其内置了一个小型Web服务器而已,不过它性能受限,不能用于生产环境。

那么将Nginx和Django组合是不是就大功告吉了呢?没那么简单。Python官方定义了WSGI(Web Server Gateway Interface)作为Web服务器与Python Web应用程序或框架之间的建议标准接口。这样可以提高Web应用程序和服务器之间的可移植性。显然Django需要一个实现WSGI的服务器来和它配合。然而Nginx作为一个普通的>

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zz/10745405.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-11
下一篇 2023-05-11

发表评论

登录后才能评论

评论列表(0条)

保存