关于对uwsgi,UWSGI,wsgi的理解

uWSGI

uWSGI是一个快速的、自维护、对开发者和系统管理者友好的应用程序容器,是纯c语言开发的服务器。uWSGI是实现了uwsgi和WSGI两种协议的Web服务器。

uWSGI是一个Web服务器,它实现了WSGI协议、uwsgi、http等协议。Nginx中HttpUwsgiModule的作用是与uWSGI服务器进行交换。WSGI是一种Web服务器网关接口。它是一个Web服务器(如nginx,uWSGI等服务器)与web应用(如用Flask框架写的程序)通信的一种规范。

对于管理人员来说,uWSGI服务器提供了各种配置方法:命令行、环境变量、XML、INI、YAML、JSON、SQlite3数据库和LDAP。

除此之外,它的设计完全模块化,这意味着,可以使用不同的插件以便满足不同的技术应用,从而实现兼容性

作用:
它要做的就是把HTTP协议转化成语言支持的网络协议,比如把HTTP协议转化成WSGI协议,让Python可以直接使用。

WSGI

WSGI是web服务器网管接口,是一套协议,用于接收用户请求并将请求进行初次封装,然后交给web框架;

1. WSGI是一种规范,它定义了使用python编写的web app(django)与web server(uWSGI)之间接口格式,实现web app与web server间的解耦。

2. WSGI 没有官方的实现, 因为WSGI更像一个协议. 只要遵照这些协议,WSGI应用(Application)都可以在任何服务器(Server)上运行

3. WSGI实质:WSGI是一种描述web服务器(如nginx,uWSGI等服务器)如何与web应用程序(如用Django、Flask框架写的程序)通信的规范、协议。

uwsgi

uwsgi协议,是一个uWSGI服务器自有的协议,它用于定义传输信息的类型,每一个uwsgi packet(数据信息包)前 4byte为传输信息类型描述,用于与nginx等代理服务器通信,它与WSGI相比是两样东西。

uwsgi是一个二进制协议,能够携带任何类型的信息。uwsgi数据包的前4个字节用于描述信息的类型。uwsgi协议主要工作在TCP方式下。uwsgi是一种线路协议而不是通信协议,在此常用于在uWSGI服务器与其他网络服务器的数据通信。


下面是他们通讯的流程:
在这里插入图片描述

uWsgi相当于是起到了一个转换的过程
客户端使用uwsgi协议发送请求给到uWSGI,然后
uWSGI使用WSGI协议给服务端发送请求

参考链接:https://blog.csdn.net/LinRuiC/article/details/84979360
https://www.cnblogs.com/wspblog/p/8575101.html

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值