0

We have a website that is deployed on Windows Azure. In Virtual Machine we have Windows Server 2008 with IIS 7.5 installed.

Problem: When we call any page of website it takes more than 2 minutes to load but after it loads then it loads pretty fast on any other browser. If application stays idle for some time (means there is no request to website from any where) it again takes very long time to load.

I searched web for this & found that "Application Initialization" module for IIS 7.5 (<- Link) can keep the website warm, I applied this on local environment & it works perfectly, after loading website it stays warm-up, I left website idle from my end & loaded website after 1.5 hours & it loaded pretty fast (within 15 to 20 seconds).

But Now I have to deploy it on Windows Azure I searched for the techniques that can be used for this in this article (<- Link).

But with first approach, I am not sure when the installation made will be removed from the Azure Server as it's not persistent.

In Second Approach I developed the Start-up task as mentioned in this post (<- Link). But found that In current case (installing the Application Initialization module) is not possible, as this requires the system restart with user involvement.

I suspect the third technique of [Technique 3: VM Role] is not possible with Windows Server 2008 with IIS7.5 & we have website, also this module as this requires the setting the Application pool to website.

Can anyone please help me to the better approach that can I have do with this requirement or any other ideas to keeping the website warm on Azure.

Thanks.

Community
  • 1
  • 1
user1400290
  • 1,682
  • 5
  • 23
  • 43
  • Are you deploying to Web Sites, a Web Role or a Virtual Machine? Clarifying this would help. – Simon W May 09 '14 at 12:18
  • It's a website on Cloud Service. – user1400290 May 10 '14 at 11:10
  • Note that Microsoft just announced that Family 1 Guest OS will be retired from June 2014 (this affect Web Roles running Server 2008 SP2). Note that if you're in a Cloud Service you're most likely running a Web Role and not a Web Site which are two discreet things on Azure. Your best bet would be to upgrade to Server 2012 minimum to get the longest supported baseline (and this would also give you access to IIS 8). – Simon W May 11 '14 at 01:23

1 Answers1

0

A few thoughts:

  1. SiteFinity has installation instructions for their product in Microsoft Azure webrole: http://www.sitefinity.com/documentation/documentationarticles/sitefinity-azure-configuration

Are you using these instructions?

  1. Application Initialization was an out-of-band feature for IIS 7.5. It is installed by default in IIS 8.0 (ws2012), but must be switched on. Use PowerShell:

install-windowsfeature 'web-appinit'

to switch it on. No reboot is required.

  1. If you cannot upgrade to WS2012, a reboot may be automated. The PowerShell cmdlet 'Restart-Computer' will do the trick. With a CMD file you can use 'shutdown.exe /s /t 00'. In this case, be sure you check for existence of the feature before the install/reboot, else you'll reboot forever. Use PowerShell:

Get-WindowsFeature 'Web-AppInit' to inspect status.

sebastus
  • 350
  • 1
  • 7