zoukankan      html  css  js  c++  java
  • OWIN概述

    1.Owin定义

    Owin是Open Web Interface For .NET。也就是.Net开源的web接口

    2.Owin的目的

    过去,IIS作为.NET开发者来说是最常用的Web Server(没有之一),源于微软产品的紧耦合关系,我们不得不将Website、Web Application、Web API等部署在IIS上,事实上在2010年前并没有什么不妥,但随着近些年来Web的发展,特别是移动互联网飞速发展,IIS作为Web Server已经暴露出他的不足了。主要体现在两个方面,ASP.NET (System.Web)紧耦合IIS,IIS紧耦合OS,这就意味着,我们的Web必须部署在微软的操作系统上,难以跨平台,而且很多新功能必须要等OS的更新。

    正是由于微软产品系紧耦合的关系,才造成跨平台上的不足,这也是被饱受诟病。所以我们需要OWIN来解耦,基于此标准,鼓励开发者开发简单、灵活的模块,从而推进.NET Web Development开源生态系统的发展。

    3.Owin的作用

    OWIN定义了4层:

    Host:主要负责应用程序的配置和启动进程,包括初始化OWIN Pipeline、运行Server。

    Server:这是实际的Http Server,绑定套接字并监听的HTTP请求然后将Request和Response的Body、Header封装成符合OWIN规范的字典并发送到OWIN Middleware Pipeline中,最后Application为Response Data填充合适的字段输出。

    Middleware:称之为中间件、组件,位于Server与Application之间,用来处理发送到Pipeline中的请求,这类组件可以是简单的Logger或者是复杂的Web Framework比如Web API、SignalR,只要Sever连接成功,Middleware中间件可以是任何实现应用程序委托的组件。

    Application:这是具体的应用程序代码,可能在Web Framework之上。对于Web API、SignalR这类Web Framework中间件而言,我们仅仅是改变了他们的托管方式,而不是取代ASP.NET WEB API、SignalR原先的应用程序开发。所以该怎么开发就怎么开发,只不过我们将他们注册到OWIN Pipeline中去处理HTTP请求,成为OWIN管道的一部分,所以此处的Application即正在意义上的处理程序代码。

  • 相关阅读:
    二维数组的循环遍历
    es6 学习笔记
    变量、作用域与内存的一些总结
    MapReduce历史服务器
    NameNode和SecondaryNameNode
    MapReduce入门
    ZooKeeper实现HA HDFS
    hdfs临时文件更改
    linux中没有tree命令,command not found,解决办法
    Hadoop伪集群搭建环境
  • 原文地址:https://www.cnblogs.com/zkb9604/p/11529106.html
Copyright © 2011-2022 走看看