Search code examples
azureorchardcmsazure-web-roles

Orchard Performance on Azure


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?


Solution

  • 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