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.
Make sure to review your caching and re-indexing settings regularly, and adjust them as needed for optimal performance.
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 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
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:
- Large Data sets with inefficient querying
- Poor Caching and re-indexing settings
- Insufficient database maintenance
- Lack of IIS optimization
- Third-party integration issues
- Inadequate hosting infrastructure