5

On our Sitecore 9.0.1 in Azure PaaS, we notice that the first load of pages in the sitecore backend (login, desktop, experience editor, content editor) takes a lot of time. For now we implemented some warmup scripts to overcome this, but I was wondering how we could improve this startup speed.

I already tried increasing DTU's on databases or upscaling the server to B3, without a lot of success. It's unclear to me where the bottleneck is situated.

Any suggestions to which components I should upscale to improve performance?

  • Does this help? By default, web apps are unloaded if they are idle for a set period of time. This way, the system can conserve resources. The downside is that the response to the first request after the web app is unloaded is longer, to allow the web app to load and start serving responses. In Basic and Standard service plans, you can turn on the Always On setting to keep the app always loaded. This eliminates longer load times after the app is idle. To change the Always On setting: In the Azure portal, go to your web app. Select Application settings. For Always On, select On. – phani Jun 6 '18 at 15:14
  • Not really what I'm looking for but thanks for the tip phani. It looks like the ARM's already enabled the Always On by default. – Bart Verdonck Jun 6 '18 at 20:12
3

I have consulted with Sitecore support on this. Regarding resources, all of them are important: Memory, CPU, Disk Latency and Database DTU's.

I have also checked my cache settings and noticed there where 2 caches beyond there limits:

  • SqlDataProvider - Prefetch data (core) with 6383 items and a size of 43.3 MB and maxsize of 50MB
  • SqlDataProvider - Prefetch data (master) with 8278 items and a size of 46.5 MB and maxsize of 50MB

This surprised me because these prefetch caches are removed by a default installed patch https://kb.sitecore.net/articles/290593

This purpose of this patch is to fix a startup problem needing to much resources from core DB.

In my experience, the patch may resolve the initial issue, but makes startup only slower, the caches are still there but smaller, needing to refetch stuff all the time.

The Solution to improve startup times in my case was to remove the patch and increase the core DB prefetch cach to 250MB.

Note that in my case this didn't reintroduce the initial issue for which the patch was distributed. The reason for this, is that I bundled my databases into an elastic database pool (as described on my blog http://onelittlespark.bartverdonck.be/how-to-boost-your-sitecore-azure-paas-website-for-zero-dollars/). This setup gives more resources to the core database during startup, and makes the patch redundant.

Your Answer

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

Not the answer you're looking for? Browse other questions tagged or ask your own question.