Is it possible to run an ASP.NET 5 site directly on Kestrel in Azure WebApps?

I checked that the server in the web response is IIS when I deploy ASP.NET5 to the azure web application, so I assume that the IIS platform handler is used to redirect it to Kestrel. Therefore, I wonder if it is possible to run directly on Kestrel and what advantages / disadvantages they will have (probably regardless of whether it is in Azure or not). I assume this will be a little faster since IIS will be excluded from pipline, but that should not be too much overhead, I suppose ...

+8
asp.net-core azure-web-sites dnx
source share
2 answers

In Azure Web App, you cannot get around IIS.

But in the general case, you can precisely launch Kestrel directly. In the end, this is just dnx web , and it is precisely that the XPlat version (Linux, OSX) will end up using (almost).

What did you lose due to using IIS

  • Security (new feature compared to IIS)
  • Easy SSL setup
  • The kernel module that processes the file / cache and other things (kernel = faster)
  • Application Monitoring / Keep -Alive (what happens if Kestrel crash)
  • Multiple Single-Port (80) Reuse Host Names
  • and etc.

What do you get from using IIS

  • Full control over the process.
  • Higher overall performance
  • Simplified installation / execution

What you must do if you do not want to use IIS

If everything is okay with the β€œlost” points, I will still go and keep your Kestrel behind a reverse proxy or NGINX server. Kestrel was made "ready for production," but it is not NGINX or IIS.

He will not keep himself alive, as far as I know.

If I missed something, let me know.

+8
source share

Your question is a bit ambiguous as it asks both about Azure Web Apps and the general case. @Maxime answered the general part, so I will answer the Azure Web App part.

Unable to circumvent IIS in Azure Web Apps. A stack that usually starts without IIS is usually handled using the HttpPlatformHandler (as is the case for ASP.NET 5), or in the case of Node, some version of this (iisnode).

+6
source share

All Articles