7

Using http://docs.orchardproject.net/Documentation/Deploying-Orchard-to-Windows-Azure I've successfully deployed Orchard into Azure.

After every 20mins or so without activity (app pool recycle?) it takes minutes to render a page. I'm running on an Extra Small instance in Azure. Webinstance, Storage and SQL Database are all in the same datacentre - SE Asia.

There is a module called keepalive, which does a regular ping.

or http://blog.smarx.com/posts/controlling-application-pool-idle-timeouts-in-windows-azure

Also turned off Debug(!) and put in full trust as described here http://docs.orchardproject.net/Documentation/Optimizing-Performance-of-Orchard-with-Shared-Hosting

Will experiment with settings / warmup pages..

The ping seems heavy handed - am I missing something?

David Makogon
  • 69,407
  • 21
  • 141
  • 189
Dave Mateer
  • 6,588
  • 15
  • 76
  • 125

2 Answers2

15

You're right about the app pool recycle - the default idle timeout is 20 minutes. If you set this to 0 (infinite), you won't see the pause after 20 minutes of inactivity.

Steve Marx blogged about how to do this. It involves a startup task calling an elevated command script that sets app pool timeout:

%windir%\system32\inetsrv\appcmd set config -section:applicationPools -applicationPoolDefaults.processModel.idleTimeout:00:00:00
David Makogon
  • 69,407
  • 21
  • 141
  • 189
  • The timeout setting also solves the Orchard startup time issue on plain vanilla IIS (non-Azure). – Giscard Biamby Feb 16 '12 at 04:43
  • Does anyone know if this change will affect the cost of the instances? I thought it might have because it eventually might consume more CPU or might be considered as more 'up-time'? Anyone? – Alex May 09 '12 at 14:49
  • 2
    Compute is billed by the hour, not by CPU utilization. As long as a VM is deployed and running, you're paying for it. So... no, this wouldn't change the cost of the instances. – David Makogon May 09 '12 at 15:00
5

I'm afraid the extra small instance may not be a very good fit for Orchard, which can hardly be described as "extra small". The Orchard site for example runs on two normal web instances. It runs pretty fast, and as it's permanently hit by users, you very rarely see a cold start. If the problem is inactivity then your only possibility is indeed to artificially hit the site or to increase the app domain timeout. Still, even a cold start should not take more than a few seconds on a reasonably-sized server, so that it takes minutes should be enough of a sign to turn you away from extra small.

Bertrand Le Roy
  • 17,731
  • 2
  • 27
  • 33
  • Thanks for the heads up Bertrand. I'll monitor the memory usage of the instance and see what happens. Seems to be flying along at the moment..with 1 user :-).. and no page caching yet either. Impressive CMS. – Dave Mateer Feb 16 '12 at 22:43
  • Curious - what size is the site running on? Normal = Small/Medium/Large/XL? – Oskar Austegard Jun 27 '12 at 20:32