我有两个选择:
-
如果我使用自行托管 Web ApiOWIN/Katana
我可以获得性能提升,但如上所述here https://forums.asp.net/t/1908235.aspx?Self+hosting+or+IIS+hosted+,我必须编写代码才能具有以下功能IIS
例如日志记录、应用程序池扩展、限制等。
-
相反,我可以使用创建 APIAsp.Net Core
不使用不必要的System.Web
请求管道 ?并使用IIS
特征或Nginx
服务器功能 ?
考虑到性能,哪个是最佳选择?
Update:
我的意思是,我不想使用IIS
,但我想自行托管 Web APIIIS
使用自定义代码的功能。或者 Asp .NET Core 会帮助我在没有 IIS 和不必要的 System.Web 请求管道的情况下实现这一目标吗?
我推荐选项 2,即 ASP.NET Core Web API,原因如下
- 现在 ASP.NET Core 2 已经发布,它更加注重更好的性能。您的 API 构建将是最小的(采用应用程序中使用的内容)。
- 核心 Web API 可以以最有效的方式构建。 .NET Core 代码可以帮助您在非 Windows 计算机上进行部署。
- API 响应足够快,因为管道中避免了许多瓶颈。
通过 Kestrel 的改进,使用 ASP.NET Core 2 是有益的。Web API 可以托管在 IIS/Nginx 上,也可以非常轻松地独立运行。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)