An in-process hosting model runs an ASP.NET Core application directly inside the IIS process. IIS therefore avoids interprocess communication, which can improve performance. section 27.2.2 section 27.5
Use these deployment rules when hosting ASP.NET Core with IIS:
- UseIIS() configures in-process hosting; UseIISIntegration() configures out-of-process hosting. section 27.2.2
- WebApplicationBuilder adds the required IIS integration automatically, so default applications usually need no extra configuration. section 27.2.2 section 27.5
- Choose out-of-process hosting when separate-process behavior is useful for troubleshooting; otherwise, the hosting-model difference usually needs little attention. section 27.2.2
Custom application builder
If an application uses a custom HostBuilder instead of WebApplicationBuilder, call both UseIIS() and UseIISIntegration() as required so IIS can forward requests correctly. With the default builder, these calls are already made automatically. section 27.2.2 section 27.5
