Orchard Performance on Azure
Asked Answered
C

2

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?

Caladium answered 15/2, 2012 at 23:27 Comment(0)
B
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
Bummalo answered 16/2, 2012 at 4:9 Comment(3)
The timeout setting also solves the Orchard startup time issue on plain vanilla IIS (non-Azure).Barroom
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?Judejudea
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.Bummalo
D
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.

Diao answered 16/2, 2012 at 5:8 Comment(2)
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.Caladium
Curious - what size is the site running on? Normal = Small/Medium/Large/XL?Latin

© 2022 - 2024 — McMap. All rights reserved.