uWsgi为什么要结合nginx去部署python应用

uWsgi为什么要结合nginx去部署python应用?

WSGI: Web Server Gateway Interface, 是一个接口,定义web server 如何转发请求到python应用。这样,只要实现web server都可以调用遵守此接口的任何python应用

uWsgi: 实现了WSGI的一个中间件
uWsgi 是实现了WSGI接口的,一个完整实现http server,可以直接部署python应用,但是为何还要用nginx呢
因为nginx擅长高并发,静态文件,gzip压缩等,这些功能uWsgi不具备,如果网站访问量不大,完全可以只用uWsgi。

nginx + uWsgi 组合使用原理
nginx 来完成proxy(反向代理),静态文件等服务。动态请求转发给uWsgi调用python应用。nginx与uWsgi通过uwsgi(全部小写)协议来完成,uwsgi是一个二进制协议,允许uWsgi 与 nginx等应用服务器交互,python代码里包括了wsgi app和简易的http server(不建议用于线上环境)

比如在flask 中的 app = Falsk(name) 这个app就是个wsgi app, 他只是一个callable 对象,传入一个wsgi请求,返回一个wsgi 的响应,想象成一个函数就好了,接收一个参数,返回一个结果

一般的web框架还会提供一个简易的http server, 比如在flask 中app.run

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值