Many of SharePoint administrators have implemented a warm up script to improve responsiveness of SharePoint after a server reboot or an IISRESET.
For example, with SharePoint 2010 you may have created a PowerShell script like this one:
# Warmup the local SharePoint sites
Function Warmup-Site
{
Param([string]$url)
Process
{
$wc = New-Object net.WebClient
$wc.credentials = [System.Net.CredentialCache]::DefaultCredentials;
return $wc.DownloadString($url)
}
}
"Warming up local SharePoint WebApplications"
Get-SPWebApplication -IncludeCentralAdministration | Get-SPSite | ForEach-Object { Write-Host "Warming up site:" $_.Url ; $html = Warmup-Site -url $_.Url}
"=> Local SharePoint sites warmed up";" "
However, this require to schedule the script in order to run it automatically and this doesn’t help for ‘classic’ ASP site hosted on IIS.
Microsoft IIS team has hear us and has develop an IIS module for IIS 7.5 (Windows Server 2008 R2).
This module is currently in beta and is available at http://www.iis.net/download/ApplicationWarmUp