Sitecore

Why am I having Sitecore performance issues?

BIG linden / Support Docs / Why am I having Sitecore performance issues?

Sitecore

Q:

We’re using Sitecore and it’s very slow. What causes Sitecore to be so slow?

Issue

The client is experiencing performance issues with their Sitecore instance and would like to know what factors may be causing this issue.

Why am I having Sitecore performance issues?

The causes of slow performance within a Sitecore instance can vary widely, but there are some common areas that you should investigate if you experience any issues.

Here are a few potential causes for Sitecore performance issues and best practices to follow that will help you resolve whatever’s causing your website problems.

Large Content Dataset

Large amounts of data content can cause performance issues in Sitecore.

You should regularly audit your data and look for any bloated or unnecessary items that could be contributing to the problem. Make sure that all of your content is optimized for indexing, so it loads quickly for users across multiple devices.

It’s important to also consider the size of images; larger images will take longer to load than smaller ones, which can slow down page speed significantly if not managed properly.

Lack of Caching & Re-Indexing

A key factor in improving site performance is proper caching and re-indexing within Sitecore’s indexing engine (Lucene). If these processes are not set up correctly, they can lead to poor page speeds or other performance issues.

“Cache configuration and tuning is key to improving the performance of the Content Delivery and Content Management environments” offers the Sitecore team. “Sitecore XC uses the core libraries of the Sitecore caching framework and Entity Memory Caching.

Make sure to review your caching and re-indexing settings regularly, and adjust them as needed for optimal performance. Tune initial prefetch cache values, and if necessary, consider enabling cache key indexing.

Sitecore Database Maintenance

Regular database maintenance is essential to keeping Sitecore running smoothly. You should make sure that any unnecessary data is removed from the databases, as this can lead to bloated databases which can slow down queries and consequently reduce site speed significantly.

You should monitor your database’s file sizes on a regular basis in order to identify any potential problems early on before they become more serious issues.

Third Party Integrations

Sitecore third party integrations can also be a source of poor performance if not set up properly or monitored regularly for updates/changes that may affect their interaction with Sitecore itself (such as changes in API versions).

It’s important to keep an eye out for any changes or updates that may be necessary in order to continue running as optimally as possible.

Hosting Infrastructure

Hosting infrastructure is also a major factor when it comes to Sitecore performance. Make sure your hosting environment and services are up-to-date and properly configured, including memory usage, server resources, etc., in order to ensure optimal performance.

Consider switching from shared hosting plans (which can often lead the slowdowns due to limited resources) if you’re experiencing poor page speeds on your site.

Sitecore is Slow: Check for Configuration Issues

Incorrect configuration settings in Sitecore can cause slow performance. Make sure to review your instance’s configuration files, including the web[dot]config and connectionStrings[dot]config files, to ensure that they are properly configured according to best practices for optimal performance.

Set Max Degree of Parallelism to 1
Enabling parallelism can cause significant performance issues because it can create more threads than the system can handle. As a result, setting the Max Degree of Parallelism to 1 is recommended for Sitecore users to avoid potential stability issues.

Upgrade to the Latest Version of Microsoft SQL
Microsoft regularly releases newer versions of Microsoft SQL with improved features and performance. Upgrading to the latest version is recommended to ensure optimal performance and stability.

Check the MSSQL config
If it is not configured to limit memory usage below 84% of system, you’ll see “swap” start to happen with SQL data, resulting in poor performance.

Addressing Sitecore Performance Issues

Sometimes it feels like controlling Sitecore is like configuring a really complex vehicle control panel.

According to the Sitecore team, there are several generic and efficient optimizations that users can perform to improve the performance of their Sitecore installation.

The first step most Sitecore site users will want to take is to ensure that the IIS environment is up-to-date. This includes using Windows Server 2008 R2 x64 and 64-bit application pool mode with at least four processor cores for high volume solutions. It is also recommended to have a minimum of 4GB of RAM available for the w3wp.exe process.

Optimizing caches is another effective way to boost Sitecore’s performance. Users should increase and tune the size of data, items, prefetch caches and make almost all renderings on their site cacheable using HTML caching. Users should also tune or disable initial prefetching without disabling actual prefetch caches, as this could affect startup times.

To optimize databases in Sitecore, users must ensure that all connected SQL databases are on the same network so as not to go through public firewalls which could

adversely affect database performance. Users should also use the database cleanup tool to remove artifact data from the databases. Tables such as history, publish queue, and event queue should be trimmed periodically. Moreover, users should rebuild all database indexes and implement maintenance plans while running DBCC CHECKDB to check for consistency errors.

Sitecore client-specific optimizations can also greatly improve Sitecore’s performance. For example, content authors should never use Full publish and must only use Smart or Incremental publishing instead. Furthermore, users must enable content expiration in IIS so that web browsers won’t request static files from the server a second time until their expiration date has passed. Static HTTP content compression and dynamic HTTP content compression in IIS can also speed up both the Sitecore client and public websites.

Users can limit items that share the same parent to 100 items per parent while cleaning up obsolete versions and ensuring they don’t grow unrestricted by keeping them at no more than 5-10 versions per item in Master database using Version Manager shared source tool. Also update ContentEditor.RenderCollapsedSections setting to False; this is a hidden setting that is set to True by default changing it could help significantly.

Top contributors to a slow Sitecore site:

  1. Large Data sets with inefficient querying
  2. Poor Caching and re-indexing settings
  3. Insufficient database maintenance
  4. Lack of IIS optimization
  5. Third-party integration issues
  6. Inadequate hosting infrastructure

Additional reading

  • Take a look at Sitecore’s official Cache Configuration options and documentation for some basic information on cache management and tuning in Sitecore here.
  • Here are more details about cache stores in Sitecore, also from the official Sitecore documentation. It includes many of the actual caching mechanisms and all the caches included in an environment’s cache store for Sitecore Experience Commerce.
  • Sitecore documentation offers additional reading on setting up and tuning HTML caching in Sitecore Experience platform.
  • Explore methods for managing data and escaping the challenges of Sitecore in your organization.

More articles about Sitecore

More articles related to .

Capabilities related to Sitecore:

Make the switch to a cost-effective platform for your organization’s website.

REQUEST A 1:1 CONSULTATION

Get a 30 minute 1:1 consult with a BIG consultant and get a 7 page report on making digital work in your organization with key insight into paths for success and playbooks just for your unique needs.

Please understand not all requests can be met. Please contact us with any questions.