How to fix ASP.NET application reload delay using load balancing?

One of the problems with ASP.NET applications is that they periodically reboot, causing a long delay and possibly waiting time for users who visit the site during this time.

This may not be a problem for small websites, but it can be a significant downtime for high traffic sites if users are redirected to a node in a web farm that restarts.

Pre-collection may help, but for sites with many pages, there is still an inevitable delay.

Can the load balancer somehow "know" if the ASP.NET application domain on a particular server restarts? They can then route traffic around this server until the application completes a restart.

I currently have my ping load balancing simple .aspx page on a site. If there is a delay or the page does not load, the host is disabled. Is it possible to perform a more focused health check, perhaps at the IIS level, and not at the ASP.NET level?

+5
source share
2 answers

If you use IIS7, you can look into the application warm-up module to start the application even after AppPool reset.

http://learn.iis.net/page.aspx/688/using-the-iis-application-warm-up-module/

+2