0
votes

I'm looking at publishing an ASP.NET Core 2.2 Web API application to Azure App Services. I noticed that in ASP.NET Core 2.2 they have added in the AspNetCoreHostingModel setting.

The documentation on this says that this setting allows In-process hosting.

In-process hosting provides improved performance over out-of-process hosting because requests aren't proxied over the loopback adapter.

Question 1: By using Azure App Services on a Windows App Service Plan, does this mean we automatically are forced to use IIS?

Question 2: If that is the case (we are forced), we should probably set this value to <AspNetCoreHostingModel>InProcess</AspNetCoreHostingModel> to take advantage of the performance benefits of InProc vs Out-of-proc ?

EDIT:

  • My assumption for Linux App Service Plans is that IIS is not available on those, so this setting is ignored.
1
that's right My understanding is same , In case of linux it wouldn't matter.Imran Arshad

1 Answers

0
votes

By using Azure App Services on a Windows App Service Plan, does this mean we automatically are forced to use IIS?

Yes, for windows app service plan, .net core app is hosted in IIS, and you could configure the AspNetCoreHostingModel. You could refer Availability in Azure App Service. And you could refer How to check Azure App Service OS version, what version of IIS to see the iis version.

If that is the case (we are forced), we should probably set this value to InProcess to take advantage of the performance benefits of InProc vs Out-of-proc ?

Yes, we should set InProcess.

My assumption for Linux App Service Plans is that IIS is not available on those, so this setting is ignored.

For Linux App Service plan, it hosts .net core app by docker. And AspNetCoreHostingModel will be ingored since it is only avaible in ASP.NET Core Module