iis - 自托管 Web 应用程序与 IIS 托管?

标签 iis self-hosting katana

我正在为作为 Windows 服务运行的服务器应用程序构建基于 Web 的客户端。服务器应用程序当前有一个用 C# 编写的基于 Windows 窗体的客户端应用程序,其想法是废弃它并提供一个新的基于 Web 的客户端应用程序。服务器应用程序将公开基于 REST 的 API,而客户端应用程序将使用 REST API 与服务器应用程序进行通信。 (目前,服务器应用程序公开基于 Windows 窗体的应用程序使用的基于 SOAP 的端点)

基于浏览器的客户端应用程序将使用 Angular JS 编写。客户端应用程序将由最多 10 个并发用户使用。该应用程序面向系统管理员,将在企业环境中使用。

另一个要求是为客户端应用程序集成 Active Directory 身份验证。所以鉴于性能要求和身份验证要求,我想知道我是否应该使用 IIS 来托管 Web 应用程序。或者我应该只使用现有的服务器来自行托管网页。

如果我选择自助托管选项,Katana 自助托管会是一个不错的选择吗?或者我应该使用 WCF Rest 工具包来提供页面吗?

与 IIS 相比,使用自托管机制来托管 Web 应用程序对性能有何影响?

如有任何建议,我们将不胜感激。

最佳答案

WCF REST 入门工具包仍处于 2009 年的第二个预览版 2,因此我不得不推荐使用它。

IIS 或自主机的问题取决于,您是否需要 IIS 开箱即用的功能,如日志记录、失败后重新启动等?

我的建议是使用 ASP.NET Web API(或 Nancy,这也是一个很好的选择),但将托管层与应用程序层分开,这样您就可以灵活地决定以后如何托管您的服务。

第二个建议是尽早进行性能测试,选择一种托管机制并衡量服务在负载下的处理方式 - 您可能会发现您正在担心一些您不需要的事情。

关于iis - 自托管 Web 应用程序与 IIS 托管?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33332814/

相关文章:

iis - 当服务(例如 ColdFusion)关闭时,IIS 7.5 中的自定义错误页面

android 网络第一个请求很慢,但后面的请求要快得多

asp.net-mvc - 如何在MVC 5Application中实现OWIN和Katana

azure - 机器 key 是否在 Azure 应用服务实例之间共享?

c# - 停止自托管 owin 服务器时完成当前请求

asp.net - 为什么 IIS 中的 Windows/集成身份验证不将用户凭据传递给 SSRS 和 SQL?

iis - 使用 Laravel Homestead 将 Vagrant 端口转发 80 到 8000

c# - 开发自承载 SignalR+NancyFx

.net - "System.MissingMemberException: The server factory could not be located"启动 Microsoft.Owin 在 TeamCity 中自托管