OWIN和Katana,为什么要将应用程序与服务器分离?

Inx*_*Inx 40 asp.net iis owin katana

我不太明白...确定它能够自我托管一个应用程序很酷,它可能很好,因为如果IIS出于任何原因失败...那么你的所有网站都会崩溃..但如果它们是自我托管然后他们住在那里自己的生活在自己的背景..我猜这很好..但我仍然没有得到这个的优点..我在IIS管道中通过使用owin加速应用程序快速跳过很多不必要的东西,或者......实际的职业选手是什么?(你不需要列出所有这些,如果它们很多:),但我知道你为什么要在IIS上使用OWIN和Katana)

提前致谢!

Los*_*nos 24

你的问题是有效的.

您可能主要考虑面向Web的Web服务器.服务HTML(或json或websockets)可以用于更多.

我使用Nancy而不是IIS,因为我有一个小应用程序,我只想从内部到达,而IIS是面向外的.此外 - 如果一台机器没有IIS,我不必安装它.

假设您运行OSX或*nix.然后你可以有一个非常好的语言和同上编辑器,并在Mono上运行一个简单的Web服务器.

假设您使用的是像Netduino这样的微控制器 - IIS不适合它.我怀疑南希在那里跑 - 但你明白了; 并非所有东西都需要24轮车来运送数据.

假设您使用Win机器作为心脏和中心自动化您的房子.现在,你真的想安装那个神奇的IIS或者尽可能少的它吗?
如果上面的自动化房屋是您的宠物F/OSS项目,并且您对自动化测试非常重视.南希因此而闻名.

另一个例子来自我的近现实.我有一个雪花片服务器运行一个过时的Umbraco CMS.在我触摸这台机器之前,我戴上了柔软的手套.
如果我需要另一个web或json服务器,Nancy将尽可能少地打印.

OWIN的论点是陈旧的,因为微软似乎或多或少地出现了Katana.

HTH

  • 如果且仅当IIS _happens_在服务器上时,它可能专用于某些东西; 通常向网络上的用户提供HTML内容.另一方面,我的应用程序正在为DevOps目的服务.我想在不触及IIS的情况下使用和删除我的应用程序.我也填写了上面的答案. (2认同)

Aar*_*ron 11

MS提供的OWIN和Katana概述 - 两个项目背后的历史背景和推理可以在这里找到:

http://www.asp.net/aspnet/overview/owin-and-katana/an-overview-of-project-katana

从文章中总结:

OWIN:它的目标不是成为下一个Web框架,而是Web框架和Web服务器如何交互的规范.

项目Katana:Katana项目代表了一组OWIN组件,它们仍然是开源的,由Microsoft构建和发布.这些组件包括基础架构组件(如主机和服务器)以及功能组件(如身份验证组件)以及与SignalR和ASP.NET Web API等框架的绑定.Katana带来了Node.js(以及类似它的框架)的许多好处 - 可以简单地创建和运行Web服务器 - 而不必强迫开发人员抛弃她所知道的有关开发ASP.NET Web应用程序的所有内容.