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

最新文章

  1. 使用野狗(Wilddog)云setValue写入数据
  2. php取整函数ceil,floor,round,intval函数的区别
  3. nginx限制单个IP访问配置
  4. iOS开发零基础--Swift教程 类型转换
  5. [转载]hashmap hashtable 的区别
  6. hdu1588 矩阵快速幂
  7. node下新建工程
  8. 使用urllib2的HttpResponse导致内存不回收(内存泄漏)
  9. 关于css中overflow:hidden的使用
  10. Android菜鸟的成长笔记(17)—— 再看Android中的Unbounded Service
  11. 百度开源上传组件WebUploader的formData动态传值技巧
  12. poj 3294
  13. apache:侧重于http server tomcat:侧重于servlet引擎
  14. Java EE开发技术课程第七周(json)
  15. angualrjs添加ngTouch
  16. 【LOJ 2144】「SHOI2017」摧毁「树状图」
  17. Oracle(转换函数)
  18. CheckedListBox  数据绑定
  19. using 和try/catch区别和注意点
  20. wordpress 修改域名后的403

热门文章

  1. LeetCode 327. Count of Range Sum
  2. Python 三级菜单与优化(一层循环嵌套)
  3. require.js+bootstrap实现简单的页面登录和页面跳转
  4. phpcms基础
  5. 蓝桥杯-有奖猜谜-java
  6. PHP怎么打开或者关闭文件?
  7. 产品经理学Python:参数传递方式
  8. .net使用RabbitMQ
  9. 基于Spring的轻量级工作流框架
  10. hdu2196Computer 树形DP