Slowness and Performance Issues and Solutions in Sitecore MCS

After deploying the application on Sitecore Managed Cloud Service(MCS) CM and CD instances, both environments were unresponsive and taking too much time to respond.

To observe the issue and find the reason behind the issue you can perform the following operations. I am explaining the reason and the solution in this blog post. Here for better understanding, I am taking an example of one instance that is CM.

  1. Collect a performance Profile from the CM server: To investigate the issue in detail you can collect a performance profile. This will affect the performance of the CM server during profile capture. To collect the performance profile you can refer to the Sitecore KB article: Collecting a Performance Profile
  2. Razor Generator Tool: Sitecore stores compiled code in the Azure file system which is known to be slow due to relying on Blob storage internally. You can pre-compile all custom views via the Razor Generator tool. This approach applies to both CM and CD. The tool compiles the view when rebuilding Visual Studio projects and embeds compiled code into built DLL's. After deploying these DLL's to the site and updating <precompilation> config node the compilation is no longer needed - Sitecore will retrieve embedded code directly. You can refer to the Sitecore KB article for details instructions: Using Razor Generator To Precompile MVC Views
  3. Verify the database DTU and Spikes: If you have not defined enough DTU for your master database then the database may encounter 100% spikes every time. To verify the DTU spikes, go to the database resource under the resource group on the Azure portal and select Metrics options under Monitoring in the left panel. Select DTU percentage in the Metric drop-down and Max in the aggregation drop-down at the right panel. Refer to the blog post for more details:  500 - The request timed out error in Sitecore. The web server failed to respond within the specified time
  4. Sitecore content caches: Verify if current cache sizes are enough for load and if you have not performed cache tuning. To increase the performance of the Website, or if the current cache size is not enough for load, then you need to follow the cache tunning procedure. Refer to the blog post: Cache Tunning in Sitecore
azure-cdn-sitecore

Happy Sitecoreing ðŸ˜Š

Comments

Popular posts from this blog

Sitecore Installation Error: Failed to Start Service 'Sitecore Marketing Automation Engine'

Import CSV Data in Sitecore Using PowerShell: Part-3

Sitecore Technology MVP Journey 2022