zoukankan      html  css  js  c++  java
  • wsgi、uwsgi、asgi协议的关系

    WSGI, UWSGI和ASGI

    首先是介绍什么是WSGI, 接着是什么是UWSGI, 接着是ASGI

            首先需要介绍的是CGI, CGI全称(Common Gateway Interface, 通用网关接口),定义的是客户端与Web服务器交流方式的一个程序.例如正常情况下客户端发送来一个请求,CGI根据HTTP协议的将请求内容进行解析, 经过计算以后会将计算出来的内容封装好,比如服务器返回一个html页面,并且根据http协议构建返回的内容格式,涉及到的tcp连接、http原始请求和相应的格式这些, 都是由一个软件来完成,完成以上的工作需要一个程序来完成, 便是CGI。

      关于WSGI, 全称Web服务器网关接口(Python Web Server Gateway Interface, WSGI),是为Python语言定义的Web服务器和Web应用程序或框架之间的一种简单而通用的接口..简单来说就是用来处理Web服务端与客户端的通信问题的,(以django框架为例,使用的是wsgiref模块,该模块的功能)

    以django框架为例,使用的是wsgiref模块,该模块的功能是:
        监听8000端口,把http请求根据WSGI协议将其转换到applcation中的environ参数, 然后调用application函数.
        wsgiref会把application函数提供的响应头设置转换为http协议的响应头,把application的返回(return)作为响应体,根据http协议,生成响应,返回给浏览器.

    UWSGI是一个Web服务器, 实现了WSGI协议,uwsgi,http等协议,

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

    uwsgi 协议是一个 uWSGI服务器自有的协议,用于定义传输信息的类型

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

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

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

     是异步网关协议接口,介于网络服务和python饮用应用之间的标准接口,能够处理多种通用的协议类型,包括http,http2和websocket.

    关于WSGI和ASGI的区别是

    WSGI是基于http协议模式开发的,不支持websocket,而ASGI的诞生解决了python中的WSGI不支持当前的web开发中的一些新的协议标准,同时ASGI支持原有模式和Websocket的扩展, 即ASGI是WSGI的扩展.

    关于ASGI的应用案例, 下一篇博客我们再聊

    更多精彩,可以关注楼主的公众号,

    最全面的django面试题总结: 回复django面试题即可获取, pycharm供给激活压缩包, 回复pycharm破解包即可获取,破解步骤在我的这一篇博客(点我直达)已经破解百次, 屡试不爽.

    以及其他楼主精心打造的原创文章,欢迎各位来访.

  • 相关阅读:
    DNNClassifier 深度神经网络 分类器
    浏览器对MP4视频 帧宽度 高度的兼容性
    UnicodeEncodeError:'latin-1' codec can't encode character
    文件夹下 文件计数
    the largest value you actually can transmit between the client and server is determined by the amount of available memory and the size of the communications buffers.
    the “identity” of an object
    广告特征 用户特征
    如果一个维度全覆盖,则有效维度应该对该维度全覆盖
    a high-level neural networks AP
    使用 LDA 挖掘的用户喜好主题
  • 原文地址:https://www.cnblogs.com/f-g-f/p/11294559.html
Copyright © 2011-2022 走看看