azure - 我们是否应该在 Azure App Services 上为 ASP.NET Core 2.2+ Web 应用程序使用 AspNetCoreHostingModel?
问题描述
我正在考虑将ASP.NET Core 2.2 Web API 应用程序发布到 Azure App Services。我注意到他们在 ASP.NET Core 2.2 中添加了AspNetCoreHostingModel
设置。
关于此的文档说此设置允许In-process hosting
.
与进程外托管相比,进程内托管提供了改进的性能,因为请求不会通过环回适配器进行代理。
问题 1:通过在 Windows 应用服务计划中使用 Azure 应用服务,这是否意味着我们自动被迫使用 IIS?
问题 2:如果是这种情况(我们被迫),我们可能应该将此值设置<AspNetCoreHostingModel>InProcess</AspNetCoreHostingModel>
为以利用 InProc 与 Out-of-proc 的性能优势?
编辑:
- 我对 Linux 应用服务计划的假设是 IIS 在这些上不可用,因此忽略此设置。
解决方案
通过在 Windows 应用服务计划中使用 Azure 应用服务,这是否意味着我们自动被迫使用 IIS?
是的,对于 Windows 应用服务计划,.net 核心应用托管在 IIS 中,您可以配置AspNetCoreHostingModel
. 您可以参考Azure App Service 中的可用性。你可以参考How to check Azure App Service OS version, what version of IIS to see the iis version。
如果是这种情况(我们被迫),我们可能应该将此值设置为 InProcess 以利用 InProc 与 Out-of-proc 的性能优势?
是的,我们应该设置InProcess
.
我对 Linux 应用服务计划的假设是 IIS 在这些上不可用,因此忽略此设置。
对于 Linux 应用服务计划,它通过 docker 托管 .net 核心应用。并且AspNetCoreHostingModel
将被 ingored,因为它仅适用于ASP.NET Core Module
推荐阅读
- facebook - 如何将我自己的 Facebook 应用程序分享给我的朋友
- unix - 仅输出 unix 中的特定行
- python - 在字典之间执行查找
- php - 网站在主机上加载正常,但在外部连接上加载不正常
- javascript - 无法在 highcharts 饼图中使用 ShowInLegend 属性和 drawTable
- python - 如果重叠,一键激活多个按钮
- javascript - touchmove 不应该自动触发 mousemove 吗?
- github - 如何阻止 VSCode CI 服务器重试 1400 次
- amazon-web-services - 删除 CloudFront 后删除 ACM 证书
- python - 在 Python 中创建内置数组对象的 C-API 接口是什么?