我正在考虑将 ASP.NET Core 2.2 Web API应用程序发布到Azure App Services。我注意到在ASP.NET Core 2.2中,它们已经在AspNetCoreHostingModel
设置中添加了。
The documentation on this说,此设置允许In-process hosting
。
进程内托管提供了比进程外托管更高的性能,因为请求没有通过环回适配器进行代理。
问题1:通过在Windows App Service计划上使用Azure App Services,这是否意味着我们自动被迫使用IIS?
问题2:如果是这种情况(我们被迫),我们可能应该将此值设置为<AspNetCoreHostingModel>InProcess</AspNetCoreHostingModel>
,以充分利用InProc与Out-of-proc的性能优势?
编辑:
答案 0 :(得分:0)
通过在Windows App Service计划上使用Azure App Services,执行此操作 意味着我们会自动被迫使用IIS?
是的,对于Windows应用服务计划,.net核心应用托管在IIS中,您可以配置AspNetCoreHostingModel
。您可以参考Availability in Azure App Service。您可以参考How to check Azure App Service OS version, what version of IIS来查看iis版本。
如果是这种情况(我们被迫),我们可能应该设置此值 进行处理 与Pro-of-proc相比性能优势的优势?
是的,我们应该设置InProcess
。
我对Linux应用服务计划的假设是IIS不可用 在这些上,因此将忽略此设置。
对于Linux App Service计划,它由docker托管.net核心应用程序。由于AspNetCoreHostingModel
仅在ASP.NET Core Module