OWIN的概念初接触

OWIN这个词我昨天才认识,一直疑惑它是个什么东西,通过一定量的研究,得到一个初步的认识,留个脚印。

OWIN是什么

OWIN是一个规范和标准,旨在阐述web服务器和web应用应该如何去解耦,它使得原本不太可能迁移到其他环境的ASP.NET应用变得可能。

在OWIN之前,当我们在写ASP.NET应用的时候,我们的思想里是默认将我们的应用绑定到IIS上的,因为我们要依赖System.Web这个程序集。

System.Web这个程序集似乎在ASP的年代就存在着了,它包含的东西未必每个你都需要,但是每个默认每个请求都会使用这个资源,所以就可能造成一些浪费。

要明白的是OWIN本身是一个规范,它没有什么dll啊exe之类的,我理解它就是一份文档而已。

Katana是什么

Katana源于微软,是微软为了实现OWIN的规范而作的产品,它就是实实在在的程序集了,我们可以使用它了。现在的Katanna实现了:

  • Web API
  • SignalR

目前ASP.NET MVC和Web Forms还是只能在System.Web中运行,不过长期来看,这部分很会被解耦,被分离出来。ASP.NET在IIS里的性能开销多半也是由于System.Web这个解不开根源,不过现在,我们有两个方式去搭建运行环境:

  • IIS
  • 自宿主(Self-Host)

如果你想性能好点,你可以采取自宿主的方式;如果你想用到IIS那些为你做好的功能,那就用IIS吧。

不过我又发现个东西叫Helios,它的目的就是移除System.Web这个家伙的依赖,不再需要不必要的模块,让你更清爽的用IIS。
关于Helios,大家可以看看: Helios


作者:xiao.chun(小春)
我的独立博客:http://1few.com
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利.

原文地址:https://www.cnblogs.com/asis/p/6088584.html