diff --git a/aspnetcore/release-notes/aspnetcore-9.0.md b/aspnetcore/release-notes/aspnetcore-9.0.md index 34371e19f6d6..36d7d2580315 100644 --- a/aspnetcore/release-notes/aspnetcore-9.0.md +++ b/aspnetcore/release-notes/aspnetcore-9.0.md @@ -49,3 +49,5 @@ The following sections describe miscellaneous new features. [!INCLUDE[](~/release-notes/aspnetcore-9/includes/endpoint-metadata.md)] [!INCLUDE[](~/release-notes/aspnetcore-9/includes/debugger.md)] + +[!INCLUDE[](~/release-notes/aspnetcore-9/includes/fix-for-503s.md)] diff --git a/aspnetcore/release-notes/aspnetcore-9/includes/fix-for-503s.md b/aspnetcore/release-notes/aspnetcore-9/includes/fix-for-503s.md new file mode 100644 index 000000000000..bb75f0decc58 --- /dev/null +++ b/aspnetcore/release-notes/aspnetcore-9/includes/fix-for-503s.md @@ -0,0 +1,23 @@ +### Fix for 503's during app recycle in IIS + +By default there is now a 1 second delay between when IIS is notified of a recycle or shutdown and when ANCM tells the managed server to start shutting down. The delay is configurable via the `ANCM_shutdownDelay` environment variable or by setting the `shutdownDelay` handler setting. Both values are in milliseconds. The delay is mainly to reduce the likelihood of a race where: + +* IIS hasn't started queuing requests to go to the new app. +* ANCM starts rejecting new requests that come into the old app. + +Slower machines or machines with heavier CPU usage may want to adjust this value to reduce 503 likelihood. + +Example of setting `shutdownDelay`: + +```xml + + + + + + +``` + +The fix is in the globally installed ANCM module that comes from the hosting bundle.